将TextBoxes添加到另一个类的列表中

时间:2014-05-07 16:56:36

标签: c# list textbox

我创建了三个文本框调用 HighOffSetX HighOffSetY HigOffSetZ 。 我想将它们添加到名为 HighOffSets 的列表中。我遇到的问题是如何将文本框添加到另一个类的列表中。

当我尝试将 HighOffSetX 添加到我的列表时,出现错误, HighOffSetX 无法识别。我该怎么做才能让我的班级认出文本框?我在使用C#的GUI方面没有很多经验。我看了谷歌并堆叠,找不到帮助我的答案。这是代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace UCAGui
{
  public class CaliberationGUI: Form
  {
    List<TextBox> HighOffSets = new List<TextBox>();

    public CaliberationGUI()
    {
        HighOffSets.Add(this.HighOffSetX); //This line gives me an error

    }
  }
}

我将文本框的名称更改为 HighOffSetX HighOffSetY HigOffSetZ 。以下是ConfigForm.Designer.cs生成的代码

        this.HighOffSetX.Location = new System.Drawing.Point(60, 28);
        this.HighOffSetX.Name = "HighOffSetX";
        this.HighOffSetX.Size = new System.Drawing.Size(100, 20);
        this.HighOffSetX.TabIndex = 5;

如果您希望我发布生成的代码,我在添加文本框时创建了C#,请告诉我。

1 个答案:

答案 0 :(得分:2)

您已经以不同的形式声明了文本框。如果没有ConfigForm的实例,您无法访问该文本框。创建第二个Form的新实例,或通过构造函数传递它:

public class CaliberationGUI: Form
{
    private ConfigForm configForm;
    List<TextBox> HighOffSets = new List<TextBox>();
    public CaliberationGUI(ConfigForm config)
    {
        InitializeComponent();
        this.configForm = config;
        HighOffSets.Add(this.configForm.HighOffSetX);
    }
}