在Form1中操作Form2中的控件

Helsing 2010-09-12 04:28:53
我之前学VB的,刚接触C#不久,有个问题让我郁闷很久,请各位GGJJ给我这个菜鸟解答下。
比如有两个窗体Form1和Form2,Form1为主窗体,Form2中有一个DataGridView1控件。在VB中,我只要在Form1的代码中写到:Form2.DataGridView1.DataSource = DT 就可以实现Form1对Form2中控件的操作。可这在C#中不可以,我知道在C#中Form1调用Form2,必须Form2 Frm = New Form2();但是问题是,我想操作Form2中的控件就不可能了,Frm.DataGridView1.DataSource = DT 这个是行不通的。
请问各位,在C#中如何才能像VB中那样操作呢?或者有什么其他好的办法?
...全文
224 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Helsing 2010-09-12
  • 打赏
  • 举报
回复
1楼正解,是我所想要的,其他两位仁兄方法倒是可以,不过麻烦了点。
wuyq11 2010-09-12
  • 打赏
  • 举报
回复
在form1定义datagridview属性
form2取值
或通过form1构造函数
如Form1 frm1 = (Form1)this.Owner;
(DataGridView)frm1.Controls["DataGridView1"]
ipromise_u 2010-09-12
  • 打赏
  • 举报
回复
你可以将FORM2(CONTROL)传过来的吧 这样就可以得到FROM2里的所有东西了,得到东西了就差不多了吧
边城的刀声 2010-09-12
  • 打赏
  • 举报
回复
你把Frm.DataGridView1声明为public就可以了,默认为protected
具体是在designer.cs文件中去修改,

110,525

社区成员

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

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

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