基本的に画像ボタンであるカスタム コントロールのセットを作成したいと思います (それよりも少し複雑ですが、それが私が目指している基本的な効果です)。ただし、これをさらに拡張して、ラジオ/トグル ボタンも使用できるようにしたいと考えています。
私がやりたいのは、ImageSource や Text などのデフォルトの実装を持つ ImageButtonBase という共通の抽象クラスを用意することです。これにより、通常の ImageButton の実装が非常に簡単になります。
私が抱えている問題は、RadioButton フレーバーを作成することです。私が見たところ、少なくとも 3 つのオプションがあります。
- RadioButton から派生するものを作成するのは簡単ですが、作成した抽象クラスを使用することはできません。
- 抽象クラスをインターフェイスに変更することはできますが、抽象実装が失われ、実際にはコードが重複することになります。
- 抽象クラスから派生させ、RadioButton 型のプロパティとイベント (IsChecked、GroupName など) を再実装することもできますが、それは確かに良いアイデアとは思えません。
注:トグル ボタンのグループを WPF でラジオ ボタンのように動作させる方法を見てきました。、しかし、私がやりたいことはもう少し複雑です。
誰かが実装の例、またはこの種のシナリオに適応する可能性のあるものを持っているかどうか疑問に思っています. 上記の各アイデアには長所と短所がありますが、それぞれに潜在的な落とし穴があります。
ありがとう、wTs