「WPF」カテゴリーアーカイブ

WPF で読みがなを取得(1)

WPF なアプリケーションで、IME で入力された文章の読みがなを取得したいことがあります(名前とか住所とかの入力など 😉 )。これは Microsoft から提供されている "Microsoft Visual Studio International Feature Pack 2.0" に含まれている "YomiganaWPFTextBox" コントロールを利用することで実現できますが、このコントロールは MVVM なパターンでは単純に用いることができません。

そこで、コードビハインドで利用するパターンのものと、MVVM で分離するパターンを二回に分けて書いてみます。
(2016年5月16日追記 UWP 用の API をデスクトップアプリケーションから利用する方法を使うことで Windows.Globalization 名前空間の JapanesePhoneticAnalyzer クラスの GetWords メソッドを利用して読み仮名を取得する方法を WPF で読みがなを取得(3) として追加しました) 続きを読む WPF で読みがなを取得(1)

ガンマ値を用いた明度の調整

画像の明度調整を行う場合、画像のピクセル単位に R, G, B 値を操作しますが、単純に定数を加減すると全体に白っぽくなったり黒っぽくなったりしてしまうため、補正用の関数に基づいた値の変換をかけることがよく行われます。今回はガンマ値を利用して明度を調整する WPF なプログラムを書いてみます。 続きを読む ガンマ値を用いた明度の調整

WPF でグラフのイメージを作成・表示

WPF 上でグラフを作成・表示するプログラムです。
System.Windows.Media.Geometry クラスの派生クラスでグラフの図形情報を作成し、System.Windows.Media.DrawingVisual オブジェクトへ System.Windows.Media.DrawingContext.DrawGeometry メソッドを用いて図形情報を描画します。描画を行った DrawingVisual オブジェクトは System.Windows.Media.Imaging.RenderTargetBitmap オブジェクトの Render メソッドを用いてビットマップ化を行い、WPF の Image 要素を用いて画面上に表示します。 続きを読む WPF でグラフのイメージを作成・表示

WPF で MVVM なサークル描画プログラム

MSDN の記事「ビットマップとピクセル ビット」でクリックした場所に円を描くサンプルを見かけて、「これを MVVM なプログラムで実現しようとするとどうなるかな」という興味から作ってみました 😀 作るついでに、定型の円を描くのではなくて、クリックした場所を中心に、ドラッグした位置の高さと幅を持つ楕円を描くようにしてみました 😉 続きを読む WPF で MVVM なサークル描画プログラム

CollectionViewSource のフィルタ処理の再評価

WPF の DataGrid へフィルタ処理を行ったデータを表示している場合に、表示しているデータの修正で当該フィルタの表示条件に関わる項目が修正された際(表示条件が true から false になった場合)、プロパティ変更通知を行っても当該データが DataGrid に表示されたままの状態となります 🙁 そこで、フィルタ処理の再評価を明示的に指示する必要があります(逆に言うと、フィルタ処理の再評価を行うのに、プロパティ変更通知は不要です)。 続きを読む CollectionViewSource のフィルタ処理の再評価

WPF でビューモデルからスクロールを行う

WPF で MVVM なプログラムを組んでいる時に、「DataGrid の表示を末尾までスクロールさせたい」とか「1行下にスクロールさせたい」というときがありますよね。それを添付プロパティを用いることでビューモデルから行えるようにしてみました。対象を Control にしているので、TextBox のスクロールも行うことができます 😉 続きを読む WPF でビューモデルからスクロールを行う