フォーク純粋なWPF(コードビハインドなし)を使用してWPFスタイルで「カスタムプロパティ」を作成するにはどうすればよいですか?
私は、チームがC#とXAMLを可能な限り切り離したプロジェクトでUI設計を行っています。
多くの一般的なウィジェット(ボタンなど)といくつかのUserControlsのスタイルを作成する際に問題が発生しています。特に、私はしたくない/知らない/考えたくないコードビハインドを使用する。
私がしたいことは、自分のUserControlsのレイアウトツリーの「深い範囲」にある要素のプロパティを変更できることです。
たとえば、UserControlがBorderであり、StackPanelが含まれていて、カラフルな楕円などが含まれているとします。
私はこのように、このユーザーコントロールをインスタンス化し、楕円の色のみを変更することができるようにしたい:「EllipseColorは」ユーザーコントロールに定義されているいくつかの「カスタム」プロパティになり
<MyUserControl Background="Gray" EllipseColor="LightGreen" />
。
私はスタイル内でDependencyProperty
を試しましたが、成功していませんでしたが、これを行うには簡単な方法が必要です。
ヘルプ(リンク、コードスニペット)は大歓迎です。
読んでいただきありがとうございます。
私はDependencyPropertyがまさにあなたが望むものだと思っています...もちろん、それを登録するコードを書く必要があります - コードビハインドとしてカウントされますか? DependencyPropertyを使用しようとしたときにどのような問題がありましたか? – IanR