这是我对Datagrid的标记
<DataGrid x:Name="DiseaseSymptomsDataGrid"
FontWeight="Normal" SelectionMode="Extended"
AlternationCount="2" GridLinesVisibility="All"
HorizontalGridLinesBrush="#FF080101"
VerticalGridLinesBrush="#FF0A0101"
BorderBrush="#FF245E97"
CanUserSortColumns="False"
CanUserAddRows="False"
AlternatingRowBackground="#FF515151"
HeadersVisibility="Column"
AutoGenerateColumns="False"
PreviewMouseLeftButtonUp="DiseaseSymptomsDataGrid_OnPreviewMouseLeftButtonUp">
<DataGrid.Columns>
<DataGridTextColumn x:Name="IdColumn" Binding="{Binding Id}" Header="Id" Visibility="Collapsed" IsReadOnly="True"/>
<DataGridTextColumn x:Name="DiseaseIdColumn" Binding="{Binding DiseaseId}" Header="DiseaseId" Visibility="Collapsed" IsReadOnly="True"/>
<DataGridTextColumn x:Name="DiseaseNameColumn" Binding="{Binding DiseaseName}" Header="Disease" Visibility="Collapsed" IsReadOnly="True"/>
<DataGridTextColumn x:Name="SymptomIdColumn" Binding="{Binding SymptomId}" Header="SymptomId" Visibility="Collapsed" IsReadOnly="True"/>
<DataGridTextColumn x:Name="SymptomNameColumn" Binding="{Binding SymptomName}" Header="Symptom" IsReadOnly="True"/>
<DataGridTextColumn x:Name="DescriptionColumn" Binding="{Binding SymptomDescription}" Header="Description" Width="425" IsReadOnly="True"/>
<DataGridCheckBoxColumn x:Name="StatusIdColumn" Header="Delete" IsReadOnly="False" />
</DataGrid.Columns>
</DataGrid>
此数据网格将加载大约一百个条目,因为它的MaxHeight为250,数据网格内部会有一个滚动条。
这是问题,每当我选中一个复选框,然后做一些事件(即点击另一行而不勾选复选框,点击按钮,任何事件)并向下滚动,我选中的复选框现在都未选中,并且现在,复选标记出现在另一行,而不仅仅是一张支票,现在有几张支票。
以下是截图:
我选中了一个复选框
http://i.stack.imgur.com/5Oeeu.jpg
然后,我点击一行(没有检查其框)
http://i.stack.imgur.com/q5BVx.jpg
然后,这发生了