C# 访问表单元素

C# 访问表单元素,c#,C#,我正在用c#创建一个多种形式的应用程序。我正在将来自用户的值存储在表单1的列表中,我想访问表单2中相同列表的相同存储值…我无法访问存储值…我收到的错误表明列表中没有我从表单2访问的值…请帮助我 public Form1() { InitializeComponent(); } public List<string> sub = new List<string>(); public int clickcounter = 1; public void

我正在用c#创建一个多种形式的应用程序。我正在将来自用户的值存储在表单1的列表中,我想访问表单2中相同列表的相同存储值…我无法访问存储值…我收到的错误表明列表中没有我从表单2访问的值…请帮助我

public Form1() 
{ 
    InitializeComponent(); 
} 

public List<string> sub = new List<string>(); 
public int clickcounter = 1; 

public void additems() 
{ 
    sub.Add("Java"); 
    sub.Add("Web Technology"); 
    sub.Add("Software Engineering"); 
    sub.Add("Networks"); 
    sub.Add("ADO.net"); 
}

public void show() 
{ 
    int x = 10; 
    int y = 10; 
    int m = sub.Count; 

    for (int i = 0; i < m; i++) 
    { 
        string name = "txtBox_" + (i + 1).ToString("00"); 
        TextBox txt = new TextBox(); 
        txt.Name = name; 
        this.Controls.Add(txt); 
        txt.Text = sub[i]; 
        txt.ReadOnly = true; 
        y += 20; 
        txt.Location = new Point(x, y); 
        txt.Width = 120; 
    } 
}

private void button1_Click(object sender, EventArgs e) 
{ 
    if (clickcounter == 1) 
    { 
        additems(); 
        show(); 
    }
}
public Form1()
{ 
初始化组件();
} 
public List sub=新列表();
公共int clickcounter=1;
公共无效附加项()
{ 
sub.Add(“Java”);
sub.Add(“网络技术”);
子条款Add(“软件工程”);
子条款添加(“网络”);
sub.Add(“ADO.net”);
}
公开展览(
{ 
int x=10;
int y=10;
int m=子计数;
for(int i=0;i
不要从Form2访问存储在Form1中的对象,而是将该对象作为属性传递给Form2

e、 G: 定义属性:

    public partial class Form2 : Form
    {
        public List<String> PersonNames { get; set; }

        public Form2()
        {
            InitializeComponent();
        }
    }
公共部分类表单2:表单
{
公共列表人名{get;set;}
公共表格2()
{
初始化组件();
}
}
将对象从form1传递到form2:

private void button1_Click(object sender, EventArgs e)
{
      List<String> PersonNames = new List<String>() { "Harald", "Thomas", "Markus" };
      ObjektBinaerSerialisieren form2 = new ObjektBinaerSerialisieren();
      form2.PersonNames = PersonNames;
}
private void按钮1\u单击(对象发送者,事件参数e)
{
List PersonNames=新列表(){“Harald”、“Thomas”、“Markus”};
ObjektBinaerSerialisieren form2=新的ObjektBinaerSerialisieren();
form2.PersonNames=人名;
}
为表单2添加一个本地列表变量和一个构造函数,如

Public List<String> locaList;
public form2( List aList )
{
   InitializeComponent( );
   localList = aList;
}
公开列表本地人;
公开表格2(名单)
{
初始化组件();
localList=aList;
}
然后在创建表单2时传递列表


希望有帮助。

你能分享一些代码吗?public Form1(){InitializeComponent();}public List sub=new List();公共int clickcounter=1;public void additems(){sub.Add(“Java”);sub.Add(“Web技术”);sub.Add(“软件工程”);sub.Add(“网络”);sub.Add(“ADO.net”);}public void show(){int x=10;int y=10;int m=sub.Count;for(int i=0;i