WPF中MainWindow中DataGrid无法更新,求帮助
c#吧
全部回复
仅看楼主
level 5
我在主窗口MainWindow中有一个表格DG0,用一个初始化方法,初化成3行3列的样子,
在窗口2中有个文本框设置个值,假如设成5,想让DG0变成显示5行,单击保存按钮重新调用了初化方法,主窗口的表格却无反映还是3行,怎么才能让主窗口的DG0变成5行?
我试过了在保存按钮单击事件里让主窗口重新打开,却能显示5行,
求帮助 。
2019年09月17日 01点09分 1
level 8
你按钮点击事件完成之后是不是需要将控件或者页面刷新一下?不刷新怎么变
2019年09月17日 01点09分 2
怎么刷新呀
2019年09月17日 03点09分
@情感禁区110 最简单的刷新就是调用加载事件,注意你控件设置的值
2019年09月17日 05点09分
@无怨无悔的abc public MainWindow() { InitializeComponent(); Init_DG0(); } 这是主窗体加载时用的,不知道该怎么调用 。
2019年09月18日 03点09分
level 3
你要写个事件,按钮点击事件也行,文本改变事件也行,总之要有个事件才能让DataGrid刷新,除非你写web端才能不用事件直接刷新
2019年09月18日 02点09分 3
谢谢,我试下。
2019年09月18日 03点09分
你可以弄个计时器什么的,隔段时间填充一下DataGrid绑定的datasource的值,也能变相实现更新数据
2019年09月18日 07点09分
@情感禁区110 至于文本框变化的事件,写法是 private void textBox1_TextChanged(object sender, EventArgs e)
2019年09月18日 07点09分
@深海飞龙 多谢指导,实现了,我在主窗体的Actived事件里调用,实现了。
2019年09月19日 23点09分
level 10
主窗体进入子窗体,show之前,注册子窗体你自己定义的事件,等到子窗体你的表单提交完毕那一刻,触发这个事件。这个事件自己写刷新数据的代码
用wpf的mvvm模式这些都不是事。
2019年09月18日 07点09分 4
level 8
回复 情感禁区110 :把DataGrid绑定单独拿出来,定义一个
public void 名称()
{
DataGrid绑定
}
在窗体加载事件调用这个
然后再在点击事件最后一步调用这个,在这之前你是要把属性设置替换操作都完成
2019年09月18日 09点09分 5
level 7
。。。。不就改一下grid的itemsSouce么,难道有什么高深的地方我没发现。
2019年09月19日 08点09分 6
level 5
感谢各位了,我实现了,在窗体的Activede事件里实现了
2019年09月19日 23点09分 7
1