###前提・実現したいこと
NumericUpDownコントロールを作成しています。
このNumericUpDownコントロールはテキストボックス、UpボタンとDownボタンで構成されます。
Templateに対応させるためにカスタムコントロールで作成しています。
ネットで検索したところ、いくつかのサンプルがあったので参照したところ、
UpボタンとDownボタンはオーバーライドしたOnApplyTemplate()メソッド内で
GetTemplateChildメソッドでターゲットコントロール(ボタン)を取得して
クリックイベントの関連付けを行っていました。
今回この部分を以下のような動きに変更したいです。
テキストボックスにフォーカスが当たった時にUpボタンとDownボタンをVisualTreeに登録して
それぞれクリックイベントの関連付けを行い、
フォーカスが外れたらUpボタンとDownボタンをVisualTreeから削除するようにしたいです。
(※visibilityによる表示/非表示による制御ではなく)
これに関して2点質問があります。
①UpボタンとDownボタンを生成方法
条件によってコントロールを切り替えたいときに、
今まではxamlのStyleのTrggerを使用してContentControlのContentTemplateを切り替えるようにしていましたが、
今回もこのような方法でよいのでしょうか?
逆にどのような方法を取るのがベストプラクティスなのでしょうか?
(コードビハインドからVisualTreeへ直接登録する方法は除きます。)
②クリックイベントの関連付け
①でContentControlでContentTemplateが切り替えた時に
UpボタンとDownボタンのクリックイベントの関連付けをどのように行えばよいのでしょうか?
(GetTemplateChildメソッドはVisualTreeに存在するものしか取得できないので
OnApplyTemplate()メソッドではイベントの関連付けが行えない)
###補足情報(言語/FW/ツール等のバージョンなど)
VisualStudio2015 Community(VB/C#)
.net Freamwork4.6.2

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/27 06:14