日期:2014-05-17  浏览次数:20840 次

dgv选定行的数据怎么在别的窗口中显示???
我想在当前窗口form1的dgv上单击右键修改,然后打开另外一个窗口form2,form2窗口显示数据,在form2中修改后点击保存,不要在数据库中重新生成一条新记录,而是要修改原来的行,具体代码该怎么写呢?谢谢大家啦!~~

------解决方案--------------------
dgv.CurrentRow.Cells["列名"].Value.ToString() 是获取你选中的哪行数据的那一列的值,你可以对应获取你想要的数据,然后传入form2;可以将你需要的列的值获取并一并传过去,也可以获取期中一列然后在form2加载的时候重新查找一遍,看个人选择。。。
------解决方案--------------------
这个建议用contextMenuStrip做菜单.

------解决方案--------------------
这就很多了,可以通过参数形式传过去,可以设置全局静态,可以设置public等等等等,你网上百度一大把
------解决方案--------------------
在dlgChild(你的子窗口)中定义好属性
public string XXX { get { return textBox1.Text; } }
...

if (dlgChild.ShowDialog() == DialogResult.OK)
{
    string newValue = dlgChild.XXX;
    //下面就是更新这个值了
}
------解决方案--------------------

var ar = dataGridView1.CurrentRow.DataBoundItem;

当前行的数据,如果是DataTable的数据源,可以把ar转化为dataRow
如果数据源是List<T>,则转化为相应的对象T.
------解决方案--------------------
你应该先设置form2中显示信息的控件的Modifiers为public
比如form2中的label1显示信息,你先到form2中把label1属性中的Modifiers改为public
然后让form2.label1.Text="需要的信息";
再form2.Show();
这就传过去了。