我在 wpf 應用程序中有一個帶有網格的窗口。網格有一個十六進制背景值。我只想從代碼后面檢查該背景的值是否是我真正的意思。<Grid Background="#424242" Name="GridMain">在后面的代碼中我得到:SolidColorBrush a = new SolidColorBrush();var b = (SolidColorBrush)new BrushConverter().ConvertFrom("#424242");MainWindow mainWin = Application.Current.MainWindow as MainWindow;if (mainWin.GridMain.Background == b) MDark.IsChecked = true;不得不提的是,MDark 是一個單選按鈕。而且這個條件永遠不會成立。我很感激你的幫助。:D
1 回答

料青山看我應如是
TA貢獻1772條經驗 獲得超8個贊
您正在比較SolidColorBrush實例,它們顯然不一樣。而是比較實際的顏色值:
var c = (Color) ColorConverter.ConvertFromString ("#424242");
MainWindow mainWin = Application.Current.MainWindow as MainWindow;
if (((SolidColorBrush) mainWin.GridMain.Background).Color == c)
{
MDark.IsChecked = true;
}
- 1 回答
- 0 關注
- 122 瀏覽
添加回答
舉報
0/150
提交
取消