如题
c# winform A窗口的datagridview中click事件,如何把这行数据传到B窗口的相应的textbox控件中显示?
太复杂,不会。哥们能帮忙写下,我学习下。
追答恩,由于时间问题,我就写一个字段。你参考参考:
注解:比如你的DataGridView名字叫dataGridView1
先创建一个公共类UserHelper:
public class UserHelper
{
public static string name;
}
然后在A窗口datagridview中click事件中:
UserHelper.name=dataGridView1.SelectedRows[0].Cells[0].Value.ToString();
然后你B页面:
tbxName.Text=UserHelper.name;
不懂啊,可以详细说下么?给点代码...
本回答被提问者采纳哥们 是两个窗体 form A 和form B。不能直接调用的。
追答那在A窗口static一个变量把数据传递给B行吗?
追问不行
这行的全部数据,都对应输入到textbox中。
追答不是很复杂的,先在A窗口定义一个string[]存储点击时得到的值:
string[] info=new string[列数];
info[0]=this.dataGridView1.SelectedRows[0].Cell[0].Value.ToString();
info[1]=this.dataGridView1.SelectedRows[0].Cell[1].Value.ToString();
........
B窗口也定义一个string[]来接收数据:
public string SelectedInfo=new string[列数];
在初始化B窗口时将参数传过去:
FromB frmB=new FromB;
frmB.SelectedInfo=info;
在B窗口的启动事件中取SelectedInfo的值赋给TextBox:
this.textBox1.Text=Selected[0];
this.textBox2.Text=Selected[1];
........
你试一下吧,有问题再提出来
如果你A窗口的DataGridView的值本来就是一个类或者是数据库中取的数据,那更简单一些,我上面写这个是没考虑你数据的来源的,可以通用。