How to change single cell color of datagrid in wpf?
14,526
Solution 1
change background of specific cell by code :
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;
Solution 2
Your cell-data should have a property IsBooked
, then in the DataGrid.CellStyle
you can use a data-trigger on IsBooked
to change its backgroud. (There are some other alternatives besides DataTriggers
, but if you just have one boolean conditional i find them to be quite convenient.)
Author by
Vivek Parikh
Updated on June 05, 2022Comments
-
Vivek Parikh almost 2 years
I want to change background color of a particular cell of this grid at runtime(show booked seats).i am binding this grid from datatable on window loaded event.i have a record of seats like 'A33'.my code for binding is like this.
MySqlConnection mycon = new MySqlConnection(str); mycon.Open(); MySqlDataAdapter da = new MySqlDataAdapter("select * from Stage", mycon); da.Fill(dt); MyGrid.ItemsSource = dt.DefaultView;