WPF デスクトップUI の記事一覧
WPFでマウス中ボタンのブラウザ風オートスクロールを実装する
WPFアプリでマウス中ボタンを押すと、カーソル位置に応じてScrollViewerを連続スクロールするヘルパー実装を紹介します。
AvalonDockで新ペイン追加時に保存済みレイアウトと互換を取る
AvalonDock の保存済み layout.xml がある環境で、アプリ更新により追加した新ペインが表示されない問題を避けるための補完パターンを解説します。
AvalonEditでDocumentColorizingTransformerによる意味的着色を行う
AvalonEdit の xshd だけでは表現しにくい、プロジェクト内シンボルに応じた意味的着色を DocumentColorizingTransformer で重ねる方法を解説します。
WPF Canvasでドラッグ可能なカードとBezier矢印を描く
WPF Canvas 上にカード型ノードを配置し、ドラッグ移動と Bezier 矢印の再描画で簡易的な関係図を作る実装パターンを解説します。
DataContractJsonSerializerで古い設定JSONを壊さないためのOnDeserializedマイグレーション
DataContractJsonSerializerで保存した設定クラスに新しいプロパティを追加したとき、旧JSONのnull値でUIが壊れないようにOnDeserializedで既定値を補填する方法を整理します。
AvalonDock のレイアウトを XmlLayoutSerializer で保存・復元する
AvalonDock で作った IDE 風 UI のペイン配置、タブ、フローティング位置を XML に保存し、次回起動時に復元する基本パターンを解説します。
AvalonEdit の検索ハイライトを DocumentColorizingTransformer で実装する
AvalonEdit で検索キーワードに一致した箇所を半透明背景でハイライトするための DocumentColorizingTransformer 実装と再描画、パフォーマンス注意点をまとめます。
コールバック interface で UI と OS 依存を逆転する
WPF UI ライブラリから WinForms、VSTO、COM などのホスト依存処理を直接参照せず、コールバック interface で上位層へ任せる設計パターンを紹介します。
WPF KeyboardNavigation で矢印キーの飛び出しを防ぐ
WPF の ListView や TreeView で矢印キー操作中にフォーカスが隣のコントロールへ飛ぶ問題を、DirectionalNavigation=Contained で防ぐ方法を解説します。
