2012-01-26 11 views
1

に重複したコードの多くを書く:コピー&ペーストを防ぐために、このコードを最適化することができますどのように防止は、私が持っているXAML XAML

<TextBlock Text="Param 1 name" Margin="6,6,0,0"></TextBlock> 
<TextBox Text="{Binding Param1Value, UpdateSourceTrigger=PropertyChanged}" Margin="6,6,0,0"></TextBox> 

<TextBlock Text="Param 2 name" Margin="6,6,0,0"></TextBlock> 
<TextBox Text="{Binding Param2Value, UpdateSourceTrigger=PropertyChanged}" Margin="6,6,0,0"></TextBox> 

... 

<TextBlock Text="Param N name" Margin="6,6,0,0"></TextBlock> 
<TextBox Text="{Binding ParamNValue, UpdateSourceTrigger=PropertyChanged}" Margin="6,6,0,0"></TextBox> 

を? コントロール、スタイル、ContentControlまたはDataTemplate?

私は余白を再利用するためにスタイルを使用できますが、どのようにしてTexBlockとTextBoxのペアの構造を再利用できますか?

+3

この質問のタイトルは誤解を招きます。コントロールのCtrl-C/Ctrl-Vを無効にすることが考えられました。代わりに、重複したコードをたくさん書くのを避けたかったのです。タイトルをより適切なものに変更してください。類似の回答を探している人は、もっと簡単に見つけられるでしょうか? –

答えて

3

二つの特性(例えば、キャプションおよびテキスト)とユーザーコントロールを作成し、キャプションとTextプロパティにテキストボックスへのTextBlockをバインドします。

デザイナーがカスタムテンプレートを作成してUI設計を完全に制御できるようにする場合は、テンプレートコントロールを使用することもできます。

UserControl vs. Custom/Templated Control(最大の利益のためにスレッド全体を読んで):

まあユーザーコントロールとカスタムコントロールの違いは 場合は 自分の中で繰り返し使用されるビューやUIの部分を持っているということです独自のプロジェクト、ユーザーコントロールを使用すると、はるかに単純であり、好ましい 方法ですが、あなたはあなた が異なるプロジェクトaross使用されると考えているUIの部分と機能を持っている場合は、カスタム コントロールを使用すると、正しいアプローチです。

関連する問題