Самый простой способ - обработать событие LoadingRow
для DataGrid
и обновить цвета внутри него.
private void dg_LoadingRow(object sender, System.Windows.Controls.DataGridRowEventArgs e)
{
int index = e.Row.GetIndex();
if (index == 0)
e.Row.Background = Brushes.Blue;
else if (index == 1)
e.Row.Background = Brushes.Red;
else if (index == 2)
e.Row.Background = Brushes.White;
}
другим способом может быть получение первых трех DataGridRow
из DataGrid
с использованием метода, описанного в этом посте. Затем используйте свойство Background
dataGridRow, чтобы изменить его цвет
Более понятным способом было бы определить style
для DataGridRow
и использовать triggers
, чтобы изменить background
цвет определенного DataGridRow
. Я не уверен, есть ли у вас какие-либо критерии для изменения цвета background
первых трех рядов, или это жестко прописанное требование. Если это какой-то критерий или значение в DataGrid
, то вам следует использовать Style
подход.