I CALL!我又遇难了!dataGridView1.SelectionChanged 执行两次问题!

APOLLO_TS 2013-04-15 09:46:11
private void show()
{
this.dataGridView1.SelectionChanged -= dataGridView1_SelectionChanged;

this.dataGridView1.DataSource = new List<string>() { "ABC", "DEF" };

this.dataGridView1.SelectionChanged += dataGridView1_SelectionChanged;

}

这代码写在 窗体的 load 方法中不会调用两次。

但是把这个窗体 放入 MDI 父窗体 中 dataGridView1_SelectionChanged就执行两次了!

目前是把这个方法 写在 子窗体 事件load 之后的一些事件体中,
比如:
protected override void OnActivated(EventArgs e)
{
show();
}

倒是解决了! 但感觉 有点 扯淡!

谁有子窗体中控件 选择事件执行两次的完美解决方案?
...全文
226 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
APOLLO_TS 2013-04-15
  • 打赏
  • 举报
回复
你试试就知道了!
gxingmin 2013-04-15
  • 打赏
  • 举报
回复
那放在子窗体的Load事件里就可以了,干嘛要放在OnActivated事件里?
APOLLO_TS 2013-04-15
  • 打赏
  • 举报
回复
当让不需要执行两次了!
gxingmin 2013-04-15
  • 打赏
  • 举报
回复
没太看明白,你是要事件执行两次,还是不要事件执行两次?

110,499

社区成员

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

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

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