WPFを例として使用しています。私たちがcontol Xを持っていて、背景を画像に設定したとします。次に、マウスオーバーで背景画像を持たないことを望みます。これはx:Nullで実現できます。しかし、x:Nullを指定しないと、同じイメージが保持されます。WPFのプロパティとx:NULLなど
WPFをサポートしていないplatfrom用のカスタムスキンエンジンを作成しようとしています。私はこの振る舞いを再現する方法を理解しようとしています。問題は、私がクラスXControlStyle
と、このクラスの2つのインスタンスが正常な状態と1つのマウスオーバーの場合、それがwpfで行ったことを達成するための明白な方法ではないことです。
設定例:mouseover.Backgroundimage = nullそれは、ユーザーがnullに設定されているかどうか、またはデフォルトでnullであるかどうかを伝えることはできません..この問題は、値の型で悪いです..すべてのプロパティを2回is notエレガントなソリューション..また、私はそれのようなBackgroundImage私は3つのソリューション(プロパティ、クラスのラッパーでプロパティ値をラップ、格納するための辞書クラス)を考え出したが、私は最後に私は満足していない実装しました。
MSDNのドキュメントを読んで、インスピレーションを得ています。私は、これらのデータを何らかの形でメタデータとして保存していると思いますか?だから私は、メタデータが何とか私の問題の解決策であるかどうか疑問に思っています。 アイデア?