ファイルから読むことで色を変える
-
20-12-2019 - |
質問
私はWindows Phoneを使っています。問題は、がを持っていないということです。代わりにColor.FromName
があります。
四角形を持ち、読み込まれているファイルからの色のものに応じて塗りつぶし色を設定します。例えば色と呼ばれるファイルに「赤」を保存しました。私はそれを読んで、私はそれをColor.FromArgb
という文字列に送信して、そのテキスト "赤"が内側に保持されます。
LpColor
でLpColor
を使用する方法。rectangle.fill= lpcolorが機能しません。
これは私が私のファイルを読む方法に関するコードです:
IsolatedStorageFileStream readColor = store.OpenFile("/contactColor.txt", FileMode.Open, FileAccess.Read);
using (StreamReader contactColor = new StreamReader(readColor))
{
var color = contactColor.ReadToEnd();
LpColor = color;
}
. 解決
文字列(赤)として保存する必要がある場合は、文字列をカラーに戻す変換方法を作成できます。あなたが持っている色の数に応じて、メソッドの複雑さが成長するので、色を名前として保存することをお勧めします - 多分それをARGBと名前の組み合わせとして保存することができますか?その情報を保持するためにクラスを使用してください。多くのオプションがたくさんあります。
とにかく、あなたのシンプルなコンバータはこのようなことをするでしょう:private SolidColorBrush ColorNameToBrush(string colorName)
{
Color color = Color.FromArgb(0,0,0,0);
if (colorName == "Red")
{
color = new Color() { R = 255, G = 0, B = 0};
}
else if ...
{
}
return new SolidColorBrush(color);
}
.
redlessの代わりにswitchステートメントを使用すると、弦がたくさんある場合は、より良い考えがあるかもしれません。
所属していません StackOverflow