读书人

c# 中里的Form1里的需要使用Form2里的

发布时间: 2013-09-05 16:02:07 作者: rapoo

c# 中里的Form1里的需要使用Form2里的datetimepicker里的时间值,怎么弄,自学C#编程的
内容如下:

       Form2 f2 = new Form2();
f2.Show();
//这里我需要使用Form2里的dateTimePicker控件里的设置好的时间值,
//
//请问需要怎么弄啊

c# 控件 编程
[解决办法]
需要为你的Form2设计一个属性,让别的程序可以读取。
[解决办法]
http://bbs.csdn.net/topics/360140208
[解决办法]
属性、事件、命名管道、socket 等等方法 都可以。
[解决办法]
声明个参数也可以,然后将这个参数在构造窗体的时候赋值
[解决办法]
http://bbs.csdn.net/topics/390128592
[解决办法]

using System;
using System.Windows.Forms;
namespace Demo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
button1.Click += new EventHandler(button1_Click);
}
private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();


f2.DateTimeChanged += new EventHandler<DateTimeChangedEventArgs>(f2_DateTimeChanged);
f2.Show();
}
private void f2_DateTimeChanged(object sender, DateTimeChangedEventArgs e)
{
textBox1.Text = e.Value.ToString();
}
}
}




using System;
using System.Windows.Forms;
namespace Demo
{
public partial class Form2 : Form
{
public event EventHandler<DateTimeChangedEventArgs> DateTimeChanged;
public Form2()
{
InitializeComponent();

button1.Click += new EventHandler(button1_Click);
}
private void button1_Click(object sender, EventArgs e)
{
OnDateTimeChanged(new DateTimeChangedEventArgs(dateTimePicker1.Value));
this.Close();
}

private void OnDateTimeChanged(DateTimeChangedEventArgs e)
{
EventHandler<DateTimeChangedEventArgs> temp = DateTimeChanged;
if (temp != null)
temp(this,e);
}
}
public class DateTimeChangedEventArgs : EventArgs
{
public DateTime Value { get; private set; }
public DateTimeChangedEventArgs(DateTime time)


{
Value = time;
}
}
}

读书人网 >C#

热点推荐