WPF

C#

[C#][WPF]MVVMらしく画面遷移する方法!

WPFで画面遷移させる方法は、先にタブコントロールを用いた方法を紹介しました。 今回は、DataTemplateを使い、MVVMらしくコードビハインドではなく、プロパティ変更通知イベントにより切り替える方法を紹介します。 私の場合、1つのア...
C#

[C#][WPF]DataTemplateを使いこなそう!

いきなりですが、 あなたは下のような画面を作る場合、どのようにXAMLを記述しますか? 全部で50個!LabelやTextBoxで書くのは大変ですよね。 こんな場合には、『DataTemplate』を使いましょう!! DataTemplat...
C#

[C#][WPF]ViewModel側からコントロールのフォーカスを指定する方法

アプリケーションを作成する際、使う人を意識していますか? 例えば、 入力チェックなどを行い、エラーのある項目を表示した後、その項目のコントロールにフォーカスを当てておくと、すぐに入力・修正することが出来ます。 他にも、 登録ボタンを押して登...
C#

[C#][WPF]WPFでTextBoxのIMEモードを設定する方法!

WPF で TextBox 毎にフォーカス時の IME の変換モードを設定するコードをご紹介します。半角英数だけを入力させたいと言った要件は稀にありますので、お役立てください。 さっそく、コードを載せときます。 <!-- IME を無効にす...
C#

[C#][WPF]UIスレッド以外からコレクションを操作する!

画面にボタンを実装していたら、このような例外が出ました。 System.NotSupportedException: 'この型の CollectionView は、Dispatcher スレッドとは異なるスレッドからその SourceCol...
C#

[C#][WPF]テキストボックスにフォーカスしたときに全選択する

WPFに限らず、TextBoxにフォーカスが移動した際、既に入力されているテキストを全選択させて欲しいという要件は珍しくありません。 ですが、WPFのTextBoxにはフォーカス時に全選択する機能がありません。 というわけで、全選択させる方...
C#

[C#][WPF]画面遷移する方法

WPFで画面遷移させる方法は、いくつかありますがここではタブコントロールを用いた方法を紹介します。 他の方法も紹介していますので、こちらも参考にしてください。 タブを配置する さっそく、タブコントロールを配置してみます。 <Window x...
C#

[C#][WPF]TextBoxコントロールのテキストの先頭または末尾にカーソルを配置する

カスタムコントロールなどを作成していると、TextBoxのカーソル位置を制御する場面に出くわすことがあります。 テキストボックス内でカーソルをテキストの先頭もしくは末尾に移動する方法を解説します。 カーソルを先頭に移動する // コンテンツ...
C#

[C#][WPF]2台目のモニタにフォームを表示する

PCに複数のモニタを接続していると、指定したモニタにフォームを表示して欲しいという要望があがることがあります。 今回は、ノートPC+液晶外部モニタという環境で外部モニタ側にフォームを全画面表示する方法を説明していきます。 もちろんメインモニ...
C#

[C#][WPF]リソースとStaticResourceの使い方

WPFでは、複数のUI要素で1つのリソース定義を共有するための仕組みがあります。 これにより、たくさんの画面があっても各画面のUIの統一を図ることができるようになります。 リソースとStaticResourceの使い方をしっかりとマスターし...