急求WPF大牛! WPF 数据太多时,DataGrid中CheckBox列误选的问题!

布局文件如下:<DataGridHeight="300"Name="List"Width="200"ItemsSource="{BindingInfo}"><DataGr... 布局文件如下:
<DataGrid Height="300" Name="List" Width="200" ItemsSource="{Binding Info}" >
<DataGrid.Columns>
<DataGridCheckBoxColumn Header="选择" Width="50">
<DataGridCheckBoxColumn.ElementStyle>
<Style TargetType="{x:Type CheckBox}">
</Style>
</DataGridCheckBoxColumn.ElementStyle>
</DataGridCheckBoxColumn>
<DataGridTextColumn Header="ID" Binding="{Binding ID}" Width="50" />
<DataGridTextColumn Header="Job" Binding="{Binding JobNum}" Width="80"/>
</DataGrid.Columns>
<DataGrid.ColumnHeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="HorizontalContentAlignment" Value="Center">
</Setter>
</Style>
</DataGrid.ColumnHeaderStyle>
</DataGrid>
后台代码如下:
public struct Info//定义与DataGrid相关的数据结构
{
public string ID { get; set; }
public string JobNum { get; set; }
}
public ObservableCollection<Info> list = new ObservableCollection<Info>();
public MainWindow()
{
Info info = new Info();
for (int i = 0; i < 1000;i++ )
{
info.ID = i.ToString();
info.JobNum = i.ToString();
list.Add(info);
}
InitializeComponent();
List.ItemsSource = list; //为DataGrid添加数据源
}

运行状况:
当我只选择前几个用户:比如0、1、2、3时,如下图

不再做其他任何操作,向下滑动滚动条,发现其他的行有误选情况,如下图:

这是怎么回事呀,求大牛解释!!
展开
 我来答
RayNCC
2012-07-13 · TA获得超过615个赞
知道小有建树答主
回答量:452
采纳率:0%
帮助的人:600万
展开全部
这个是因为你的DataGridCheckBoxColumn没有绑定数据的原因
WPF里面的DataGrid有Virtualization提升绘制性能,会导致控件的复用
你这儿的Info结构里面加个IsChecked属性,做个数据绑定就行了
追问
已经解决了!的确是数据绑定的问题.
Mickal小米
2012-07-09 · TA获得超过3666个赞
知道大有可为答主
回答量:1542
采纳率:100%
帮助的人:1768万
展开全部
你把DataGridCheckBoxColumn 改成模板列,里面再塞个checkbox试试。
DataGridCheckBoxColumn 本身可能存在bug。
更多追问追答
追问
刚才试了模板列,还是不行啊!
追答
晕,你checkbox有木有设定神马绑定项?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
birdbrother
2012-07-09 · 超过12用户采纳过TA的回答
知道答主
回答量:50
采纳率:0%
帮助的人:31万
展开全部
datagrid 滚动条刷新的问题。
更多追问追答
追问
我感觉也是滚动条刷新的问题,要怎么解决呢?
追答
ScrollViewer.CanContentScroll="False" 这个很重要

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式