WPF

コンピュータ

WPFレイアウトまとめ(基本事項)

WPFのレイアウトは「自動レイアウト」が前提です。固定サイズ指定で組むよりも、親コンテナ(Panel)に配置ルールを持たせて組み立てる方が破綻しにくく、拡張もしやすいです。1. コントロールは基本的に親の領域いっぱいに広がるWPFのコントロ...
コンピュータ

WPFよく使うコントロール一覧

レイアウト系 Grid 行・列でレイアウトする。WPFで最頻出。 StackPanel 縦 or 横に順番に並べる。 DockPanel 上下左右に寄せて配置する(最後の子を残り領域にすることも可能)。 Canvas 絶対座標で配置する(図...
コンピュータ

WPFのAttachedPropertyでコマンドをバインディングするサンプルプログラム

やっていることは、クリックしたマウスの座標をMessageBoxで表示するだけです。コードビハインドでは、XAML側でCanvasにx:Nameを付けて、Clickイベントに対応するメソッドを記述するだけなので、ほんの数行のコードで済みます...
スポンサーリンク
コンピュータ

WPFのContentControlを使いListViewの選択Itemのクラスで編集UIを切り替える。

DataTemplateを使うと、ContentControlの中身を切り替えることが出来るので、ListViewの選択したItemのクラスでUIを切り替えるサンプルコードを作成しました。実行例:左側はListViewで、「タイトル」「明る...
コンピュータ

WPFでImageのSourceが変更されたらスクロール位置を初期化するAttached Property

ImageにはSourceの変更を通知するイベントは存在しませんが、DependencyPropertyDescriptor.FromProperty()でImageのSourceプロパティを監視し、変更があった場合SourceChange...
コンピュータ

WPFでTextBoxがフォーカスを得たときに背景色を変える Attached Property

Attached Properyの使い方を確認のためのサンプルコードです。起動イメージTextBoxがフォーカス得た状態FocusHelper.cs// TextBox や Button などの Control に、フォーカスを得たときに背...
コンピュータ

WPFでチェックボックス付きメニューのサンプルコード

メニュー項目のチェックボックスをデータバインディングで管理するサンプルコードです。・初期はチェック付き・選択するとチェックが外れるMainWindow.xaml<Window x:Class="WpfCheckMenuDemo.MainWi...
コンピュータ

WPFでCanvasクリックでPathで線の描画、選択、削除を行うサンプルコード

Canvas上でマウスをクリックすると縦の線(120px)が赤色で描画されます。描画済みの線をクリックすると線の色が緑色に変化します。緑色の選択状態でキーボードのDeleteキーを押すと、線が削除されます。MainWindow.xaml<W...
コンピュータ

WPFのXAMLでResourceDictionaryを使い別 XAML ファイルに分離するサンプルコード

ResourceDictionaryをMainWindow.xamlとは別ファイルで作ります。Themes\ButtonStyles.xaml<ResourceDictionary xmlns=" xmlns:x=" <Style x:Ke...
コンピュータ

WPF Button の外観を変更する ControlTemplate サンプル

ControlTemplateを使うことでButtonの機能はそのまま・見た目だけ差し替えます。<Window x:Class="ControlTemplateSample.MainWindow" xmlns=" xmlns:x=" Tit...
コンピュータ

WPFのTextBoxでデータバインディングを行うサンプルプログラム

TextBoxの入力した内容をデータバインディングを使い、TextBlcokに表示するサンプルプログラムです。MainWindowViewModel.cs// メインウィンドウのViewModelusing Maywork.WPF.Help...
コンピュータ

WPFのイベントの バブリング/トンネリング

WPFのイベントは子から親へイベントが通知されるがバブリングと親から子へイベントが通知されるトンネリングあります。トンネリングイベントには Preview というプレフィックスが付きます。目的のイベントで処理を行ったら、e.Handled ...
コンピュータ

WPFアプリに組み込むワーカーとキューの考え方

まず、ワーカーは言語機能や特定のライブラリを指す言葉ではありません。メインスレッド(WPFならUIスレッド)とは別のスレッドで処理を引き受ける、プログラム上の設計(役割) を指します。ワーカーは、ローカルで、同一プロセス内に立ち上げる小さな...
コンピュータ

WPFでTaskのキャンセルのサンプル

ソースコードファイル名:MainWindow.xaml<Window x:Class="TaskCancelSample.MainWindow" xmlns="" xmlns:x="" Title="Task Cancel Sample" ...