テンプレートクラスにいくつかのxamlを構築し、Fillプロパティをエンドユーザが入力したテキストボックスからのものに設定するための四角形が必要です。したがって、xamlを出力する前に、その値がBrushオブジェクトに変換可能であることを検証する必要があります。それ以外の場合、値が有効な色(名前付きであるかどうか)でない場合は、次のようになります。エラー:Sys.InvalidOperationException:コントロール 'sldivparent'のXAMLが無効です。 [](行6、列412):テキスト 'NotValidColorValue'から 'System.Windows.Media.Brush'の作成に失敗しました。明らかに、私はそれを望んでいないし、無効な値の場合には私はそれを白にしたい。Silverlightでの色の妥当性確認
それでは、「NotValidColorValue」が有効なカラー値であることを確認するにはどうすればいいですか?
おかげでさらに明確にするため
編集: 私は正確とその作業罰金するのSilverlightからYUIカラーピッカーを呼び出して、カラーピッカーを使用しています。ユーザーがテキストボックスに色(#112233または "Red"のいずれか)を直接入力することができ、無効であれば有効である必要があります。私は に色の名前の全体的な手動チェックに入ることを望まないので、理想的には、ユーザーが入力したものを使用して何らかのタイプのオブジェクト(多分いくつかのブラシの派生物)を作成しようとしたいと思います。私は色の値が無効であり、それに応じて行動することを知っています。
+1すてきな答え! – Stan
、それは私がスポットと呼ぶものです!あなたの道に来て本当に価値のあるポイントです。 – danijels
@danijels:ありがとうございます。「sc#1.0,0.5,0.8,0.0」のようなscrgbのテキスト値でさえ、このアプローチで動作します。私の答えの古い部分を削除 –