问个关于datagridview的问题 ..
[Button修改] [Button删除]
序号 ID value
1 001 aaa
2 002 bbb
1. 类似于上面所示,上面有两个按钮,下面的列表用datagridview
显示,现在用鼠标选中其中一行,例如(1 001 aaa)后,
点击按钮 [Button修改] 弹出另外一个窗口,可以修改选中一行的信息,
如果点击按钮 [Button删除] 则删除该行.
2. 双击datagridview中一行,弹出新窗口,功能和点击按钮 [Button修改]
相同.
谢谢了 ..
------解决方案--------------------新的窗体为NewForm.
在NewForm上做一个:
int id;
public int ID()
{
set{id = value;}
}
在datagridview存在的窗体中
edit_Click(sender,e)
{
int ID = datagridview.currentdatarow.cells[ "序号 "].value.tostring();
NewFrom form = new NewForm();
form.ID = ID;
form.ShowDialog();
}
然后在NewForm窗体中编辑这个ID为1的行。
双击是在datagridview的doubleclick事件中写 this.edit.perfenmenclick();
大致就这样
------解决方案--------------------在父窗口的事件中写:
如:
edit_Click(sender,e)
{
int ID = datagridview.currentdatarow.cells[ "序号 "].value.tostring();
NewFrom form = new NewForm();
form.ID = ID;
form.ShowDialog();
//在此添加刷新代码
....
}
------解决方案--------------------在你的子窗口,保存完后添加一句:this.DialogResult = DialogResult.OK;
然后在父窗口的事件中:
edit_Click(sender,e)
{
int ID = datagridview.currentdatarow.cells[ "序号 "].value.tostring();
NewFrom form = new NewForm();
form.ID = ID;
if(form.ShowDialog().DialogResult = DialogResult.OK)
{
添加刷新代码;
}
}
因为这涉及到父子窗口之间的通讯.
楼上的,在子窗口显示出来就刷新父窗口代码,但是子窗口并没有做任何操作.
要子窗口操作后,刷新才有意义!