winform下为什么点击的DATAGRID中的button会弹出重复的窗口?

xj1122 2005-09-25 10:40:32
我在DataGrid中用tablestyle建立一个button列,点击执行如下事件:
private void HandleCellButtonClick(object sender, DataGridCellButtonClickEventArgs e)
{
frmData frm = null;
if(frm==null)
{
frm = new frmData();
frm.ShowDialog();
}
else
{
frm.Activate();
}

}
弹出frmData窗体正常。但是如果我在主窗口执行了以下这个重载数据方法后就出问题了:
public void btnRefresh_Click(object sender, System.EventArgs e)
{
// Simply tell the Form to reload
frmMain_Load(this, new System.EventArgs());
}
这个方法是用来刷新DataGrid数据的,我定义了15秒执行一次,现在问题是执行N次这个方法,上面的弹出窗口就会弹出N+1个,这是怎么回事呢?
frm.ShowDialog();这种情况下是弹出一个,关闭之后弹出下一个。
frm.Show(); 用这个是一下子弹出N+1个。那里出了问题呢?
...全文
110 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
HelloBaly 2005-09-25
  • 打赏
  • 举报
回复
frmData frm = null;
if(frm==null)
{
frm = new frmData();
frm.ShowDialog();
}
你这段代码明显就是有问题啊!你已经把frm定义成Null,在判断if(frm==null),肯定是走不了Else乐。当然每次你一刷新就要执行ShowDialog()。当然有很多窗体了。
xj1122 2005-09-25
  • 打赏
  • 举报
回复
高手请帮帮忙阿

110,537

社区成员

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

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

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