c#做的winform程序,如何在一个form中调用上一个form上的控件的值啊?
解决方案 »
- 线程外操作控件
- vs2005复制文件
- 家用电脑白天用作服务器(家中没人),晚上关机,安全吗?
- 中西文混排的字符能直接从 gb2312转utf8吗?
- 在GridView中点击每行后面的“编辑”按钮进入编辑页面
- iis部署问题
- 这样的打包文件怎么做啊???
- 原创:C#代码,求n个字符串的公共字符串
- 线程消息问题
- public void Page_Load(object sender, System.EventArgs e)为什么打开完成后没显示呢详情请看(UP也有分的啊)!!
- 有没有办法直接拆分一个DataTable 十万火急 在线等
- 如何实现使用c#.net 编写加密程序,防止有人将媒体的链接直接贴入播放器(Windows Media Player/RealPlayer)中播放??
1:用属性传值
2:用构造函数传值我这里说说构造函数传值
在你的第一个窗体中:
FromB fb=new FromB(this.DateTimePicker)
fb.ShowDialog();
在你的子窗体中:(改写构造函数)DateTimePicker dtp;
public FormB(DateTimePicker DTP)
{
// dtp=DTP;
// Windows 窗体设计器支持所必需的
//
InitializeComponent();//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
}这样就可以在窗体b中使用dtp了,就获得了a中的datetimepack的值
加个属性
public DateTime MyValue
{
get
{
return dateTimePicker1.Value;
}
}2. Form2加个私有引用变量用于引用Form1对象,并更加构造函数.
private Form1 frm1;
public Form2(Form1 frm1)
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
this.frm1 = frm1;
}3.
Form1上有个button1用于弹出Form2
private void button1_Click(object sender, System.EventArgs e)
{
Form2 frm2 = new Form2(this);
frm2.Show();
}4.在Form2可以通过以下语句取得Form1上dateTimePicker1的值
frm1.MyValue.ToString();
我用了4楼和6楼哥们说的方法是可以解决问题的啊?
你再试一下首先,在Form1里将参数传给Form2
Form2 form2 = new Form2(this.dateTimePicker);//this指Form1,dateTimePicker指DateTimePicker实例然后,修改Form2的构造函数
public Form2(DateTimePicker dateTimePicker)
{
//构造函数代码
}