#ffaacc などの 16 進値から SolidColorBrush を作成したいです。どうすればいいでしょうか?
MSDN では、次のようになりました:
SolidColorBrush mySolidColorBrush = new SolidColorBrush();
mySolidColorBrush.Color = Color.FromArgb(255, 0, 0, 255);
そこで私は次のように書きました(私のメソッドは色を次のように受け取ることを考慮して#ffaacc
)。
Color.FromRgb(
Convert.ToInt32(color.Substring(1, 2), 16),
Convert.ToInt32(color.Substring(3, 2), 16),
Convert.ToInt32(color.Substring(5, 2), 16));
しかし、これはエラーを引き起こしました
The best overloaded method match for 'System.Windows.Media.Color.FromRgb(byte, byte, byte)' has some invalid arguments
また、次の 3 つのエラーもあります。Cannot convert int to byte.
しかし、MSDN の例はどのように機能するのでしょうか?
ベストアンサー1
代わりにこれを試してください:
(SolidColorBrush)new BrushConverter().ConvertFrom("#ffaacc");