ねののお庭。

かりかりもふもふ。

WPFで動かせるテキストボックスを作る。

WPFでパワーポイントのテキストボックスのようにドラッグドロップで移動可能なテキストボックスが作りたかったのですが、ちょっと手間取ったので書いておきます。

  結論から言えば以下のようなxamlを作って

xaml.csを

てな感じにしてあげればいい。ていうかスペルmoveableじゃなくてmovableじゃん…。

 

ドラッグドロップできるコントロールを作るのにはThumbクラスを使うのですが、この中にテキストボックスを置くだけではドラッグドロップできるようにはなりません。

そこでThumbの中にグリッド(1x1)を用意して、Rectangle,TextBoxの順に配置します。この時RectangleはTextBoxよりすこり大きめになるようxaml.csの方に書いておきます。そうするとTextboxから少しそとにはみ出ているRectangleをドラッグドロップしてコントロール全体を動かせるようになります。

作るときはこんな感じで作ってCanvasにべたべたはっていきます。