如何访问从A类到B类的get set值

时间:2012-05-14 03:26:52

标签: c# winforms

我有A班和B班

A班有:

public int ID
{
    get;    
    set;
}

运行程序时,将一个值分配给ID ex:123并在表单关闭时销毁并设置默认值,即= 0

问题:如何在B类被摧毁之前保存它? 所以我可以让他们访问B类中的值并执行验证。

3 个答案:

答案 0 :(得分:1)

我想假设Class AClass B是胜利形式,而您正在A开启B。以A形式写下以下方法:

public int GetInput(){
   Show();
   return ID;
}

同样在A的构造函数中写下以下行

public A()
{
    Visible=false;
}

在表单B中,将以下内容写入打开表单A

public void OpenA()
{
    var a=new A();
    var i=a.GetInput();
}

现在i包含ID的值。

答案 1 :(得分:0)

我相信Observable模式可以帮到你。使用下一个链:主线程(表格如果winforms)在结束前向A发送事件,A在销毁前向B发送事件

答案 2 :(得分:0)

您可以订阅OnClose事件。

http://msdn.microsoft.com/en-us/library/system.windows.forms.form.onclosed.aspx

基本上,B班可以做类似的事情:

form.OnClosed += (sender, e) => {
    var id = form.ID;
    //Do something with the ID
}

希望它有所帮助。