关于DataGridView显示数据的问题

满天飞雪No1 2019-11-26 02:09:16
public FrmMain()
{
InitializeComponent();
LoadData(); //加载数据
}
private void txtQuerySNo_TextChanged(object sender, EventArgs e)
{
DataView dv = ds.Tables["Student"].DefaultView;
if (txtQuerySNo.Text==string.Empty)
{
dgvStudent.DataSource = null;
dgvStudent.DataSource = ds.Tables["Student"];
}
else
{
dv.RowFilter = "SNO =" + txtQuerySNo.Text;
dgvStudent.DataSource = dv;
}
}

启动程序时,能通过 LoadData() 加载数据。先在txtQuerySNo 这个TextBox控件中录入学号,能在dgvStudent 这个DataGridView控件中显示筛选的数据,但清空txtQuerySNo 后,还是显示的原筛选的数据。我断点跟踪时,标红那段实际上是有全部数据,就是不显示在dgvStudent 中。
...全文
86 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ManBOyyy 2019-11-26
  • 打赏
  • 举报
回复
DataView dv = ds.Tables["Student"].DefaultView;
if (txtQuerySNo.Text==string.Empty)
{
dv.RowFilter =null;
dgvStudent.DataSource = dv;
}
else
{
dv.RowFilter = "SNO =" + txtQuerySNo.Text;
dgvStudent.DataSource = dv;
}
datafansbj 2019-11-26
  • 打赏
  • 举报
回复
你需要在清空 TextBox 的值时,同时清除 Filter 属性: dv.RowFilter = ""; 否则该属性一直在生效。
满天飞雪No1 2019-11-26
  • 打赏
  • 举报
回复
谢谢两位,问题解决了!

110,559

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧