如何更改数据网格的单个单元格颜色WPF?(How to change single cell col

2019-09-01 01:13发布

我想改变这个网格的特定细胞的背景颜色在运行时(秀座位预订)。我是从数据表上的窗口中加载event.i结合该网格有像席的纪录“的结合A33'.my代码是这样这个。

MySqlConnection mycon = new MySqlConnection(str);
mycon.Open();
MySqlDataAdapter da = new MySqlDataAdapter("select * from Stage", mycon);
da.Fill(dt);
MyGrid.ItemsSource = dt.DefaultView;

Answer 1:

你的数据应该有一个属性IsBooked ,然后在DataGrid.CellStyle您可以使用数据触发上IsBooked改变其研究背景。 (还有一些其他的替代品 ,除了DataTriggers ,但如果你只是有一个布尔条件我觉得他们是相当方便的。)



Answer 2:

通过代码更改特定细胞的背景:

   DataGridRow firstRow = dataGrid1.ItemContainerGenerator.ContainerFromItem(dataGrid1.Items[0]) as DataGridRow;
   DataGridCell firstColumnInFirstRow = dataGrid1.Columns[0].GetCellContent(firstRow).Parent as DataGridCell;
   //set background
   firstColumnInFirstRow.Background = Brushes.Red;


文章来源: How to change single cell color of datagrid in wpf?