【发布时间】:2014-11-30 08:24:25
【问题描述】:
DataGrid 的“AlternationCount”属性有问题。 我为行的背景设置了两种颜色,现在当我选择其中一行并移动滚动条时,每隔一行也会被选中! 我设置了 AlternationCount="2" 和 SelectionMode="Single"。
有人能解决这个问题吗?
C#代码:
private void Window_Loaded(object sender, RoutedEventArgs e)
{
var data1 = new Test { Test1 = "TestCell1", Test2 = "TestCell2", Test3 = "TestCell3" };
var data2 = new Test { Test1 = "TestCell1", Test2 = "TestCell2", Test3 = "TestCell3" };
for (int i = 0; i < 10; i++)
{
dataGrid1.Items.Add(data1);
dataGrid1.Items.Add(data2);
}
}
public class Test
{
public string Test1 { get; set; }
public string Test2 { get; set; }
public string Test3 { get; set; }
}
Xaml:
<DataGrid AlternationCount="2" SelectionMode="Single"
Name="dataGrid1"
RowBackground="Beige"
AlternatingRowBackground="linen"
DataContext="{Binding}"
HorizontalAlignment="Left" Height="239.334"
Margin="39.333,37.333,0,0"
VerticalAlignment="Top" Width="432">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Path=Test1}" Header="Header1" />
<DataGridTextColumn Binding="{Binding Path=Test2}" Header="Header2" />
<DataGridTextColumn Binding="{Binding Path=Test3}" Header="Header3" />
</DataGrid.Columns>
</DataGrid>
【问题讨论】: