2010-07-13 106 views
1

我试图从数据库中获取数据并使用获取的值加载数据库。后来我根据名称对表中的数据进行排序,然后我想将它与CheckedListBox绑定DataView问题排序

但是,当我尝试使用DataView类(如下面的代码所示)时,我看到闪烁发生显示数据和所有数据一旦被分类,则它变得稳定。

如何摆脱闪烁?从某种意义上说,我想将所有数据分类并一次显示所有数据。

myReader = cmd.ExecuteReader();

while (myReader.Read())
{
myTableForCBL.Rows.Add(myReader["Name"],myReader["rollNumber"]);
}
DataView view = myTableForCBL.DefaultView;
view.Sort = "Name";
checkedListBox1.DataSource = myTableForCBL; //datatable for checked list box
checkedListBox1.DisplayMember = "Name";
checkedListBox1.ValueMember = "rollNumber";

回答

1

这是因为我排序数据的显示方式,而不仅仅是数据本身。所以,它闪烁。 DataRow [] rows = DataTable.select(filterexpression,sortVariable);而不是数据表中的数据。

//确保filterexpression =“”,如果您想要某些行,请选择其他所有行,然后编写过滤器的过滤表达式。 // sortVariable是的数据表

一列然后再导入行到另一个临时表和源,其到CheckedListBox

然后闪烁或数据停止的闪烁。