WinForm间传递参数(后附两个问题,请帮忙看看)

平时很少接触WinForm方面的东西,今天花了快两个小时才搞明白窗体间是怎么传参数的。

问题:有Form1和Form2两个窗体,希望点Form1上的button1可以弹出Form2作为对话框,并把Form1上的Control1控件整体传给Form2。

解决方法:
第一步:Form1的button1_Click事件中添加代码:
None.gif Form2 form2  =   new  Form2( this .control1);
None.gifform2.ShowDialog();

第二步:Form2中定义Control1实例,代码:
None.gif private  Control1 control1;

第三步:修改Form2构造函数,代码:
None.gif public  Form2(Control1 control1)
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif
//
InBlock.gif
// Windows 窗体设计器支持所必需的
InBlock.gif
//
InBlock.gif
InitializeComponent();
InBlock.gif
InBlock.gif
//
InBlock.gif
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
InBlock.gif
//
InBlock.gif
this.control1 = control1;
ExpandedBlockEnd.gif}

OK,问题解决!

新的问题:
1、不知道是不是还有更好的解决办法???
2、ShowDialog()方法生成有模式的对话框,但这和真正意义上的对话框仍有差别(例如:在任务栏上仍显示窗体标签,而.NET Framework默认对话框不会出现这个东西),那么如何自定义一个和.NET Framework默认对话框类似的对话框呢???

Update@2005-08-05 16:27: Pharaoh帮忙将问题2解决!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值