気まま研究所ブログ

ITとバイク、思ったことをてきとーに書きます。

WPF

コンパレータでソート可能なListViewを実装してみる

以前、ヘッダーでソート可能なListViewを実装してみるといったソート可能なListViewを紹介しましたが、より高度なソートとしてコンパレータを使ってソートする方法も紹介します。 ただし、前回のように汎用的な実装ではないので仕様に際しては工夫が必要です…

WPF RichTextBoxでScrollViewerイベントを捉えて末尾を検知する

こんにちは。 前回に続き、またRichTextBoxネタです。 今回はRichTextBoxの内部で動くScrollViewerのイベントを捉えてスクロールを捕捉してついでに末尾を検知してみようと思います。 やることは単純で、TemplateからPART_ContentHostの名前がついたScrollVi…

WPF RichTextBoxのWordWrappingを無効化する

お久しぶりです。めっきり更新が止まってしまいましたが、辛うじて生きています。 さて、今回はWPFネタで、RichTextBoxコントロールのWordWrapping (TextWrapping) を無効化してテキストに応じて横に伸びてもらいます。 RichTextBoxコントロールは標準でWord…

ヘッダーでソート可能なListViewを実装してみる

お久しぶりです。 最近多忙とブログネタが無かったことが重なって更新がかなり空いてしまいましたが、中の人は普通に生きてます。 今回は久しぶりにC# WPFネタで、GridViewColumnを装備したListViewで各GridViewColumnをクリックするとそのカラムに応じてソ…

WPF TreeViewでアイテムのドラッグ移動を実装する

TreeViewを扱っているとアイテムをドラッグアンドドロップで移動させくなることがあります。 Formsでは結構やり方が乗ってるんですが、WPFとなると一切出てこないので実装してみることに。 本当はコードビハインドに書きたくはなかったのですが、こうする以…

ListBoxにてListBoxItemにTextBoxとButtonを配置してみる

久しぶりにWPFのテクニックを紹介します。 ListBoxでファイルパスを管理する機会があって、TextBoxとButtonでファイルパスを入力して管理するというのをやりました。 ListBoxってただ文字列を配置するだけでなく、意外にも好き放題カスタマイズできるので参…

WPF TreeViewで選択や展開を保持したまま再描写する

こんにちは。 タイトル考えたけどいいのが思いつかなかった。 ただの雑記だしいいか。 本題ですが、TreeViewってあんまり使う機会思いつかないけど地味に結構使うコントロールだと思います。 私も最近XMLエディタを作ることがあって使ったんですが、普通にIt…

ListViewにおけるカスタムスクロールバーの余白

すっかり日にちが経ってしまいました。 Savannah Managerを作りなおしていると、詰まってしまったので備忘録として置いておきます。 ScrollBarをカスタマイズし、標準のままでListViewに縦横のスクロールバーを配置すると次のように謎の余白ができてしまいま…