0

我的主窗体,现在有两个按钮将显示其他窗体(每个按钮显示一个新窗体),我的主窗体类名是 MyMainForm .. 其他两个窗体类名是: MySubForm1 , MySubForm2 问题是我我在访问子表单内的 MyMainForm 中的某些内容时遇到了一些问题。

让他们全部偏心是个好主意吗?

4

1 回答 1

2

在我看来,您希望能够从不同的表单访问表单的私有成员。

如果您希望能够访问其任何成员,则需要从“子表单”引用到父表单。

其次,您将无法访问“私人”成员。还有两个选项,为您想要的成员创建公共 get/set 方法,或者将对象的访问修饰符更改为 public/internal。

发布更多代码来解释您尝试过的内容以及您正在尝试实现的目标,我也许可以为您指明正确的方向。

此外,在更直接地回答您的问题时,部分与您尝试做的事情无关,它们用于扩展现有类,同时保持逻辑文件中的代码分离。

public class Main : Form
{
     // assuming here you have three textboxes

     private void button1_Click(eventargs etc)
     {
         OtherForm otherForm = new OtherForm() { Text1 = textbox1.Text, 
                                                 Text2 = textbox2.Text,
                                                 Text3 = textbox3.Text };
         otherForm.Show();
     }

}

public class OtherForm : Form
{
    public String Text1 { get; set; }
    public String Text2 { get; set; }
    public String Text3 { get; set; }
}

使用此设置,您的 OtherForm 将拥有创建表单时文本值的副本。

根据您的问题和以下评论,这是您在场景中所期望的,但我会再说一遍,向我们展示一些代码,我们可以提供更好的帮助。Partials 绝对不是正确的答案。

于 2012-07-24T17:39:08.477 回答