C# - 如何从另一个类向列表框添加行

时间:2011-12-27 23:27:43

标签: c# listbox

我想在ListBox中添加一些行,而且我的课程很少。我尝试在属性中公开我的ListBox,并在我的课程中添加一些行,Form1 form = new Form1();然后form.listBox3.Items.Add("ex");

我的程序没有显示任何问题。接下来我该怎么办?

3 个答案:

答案 0 :(得分:1)

在表单上创建一个公共方法,接受要放入列表框的项目,然后执行将项目实际添加到列表框中的脏工作。

不要将内部暴露给其他类;它不是面向对象的好形式。

答案 1 :(得分:1)

只需将表单(包含listbox3)传递到您要添加到listbox3的表单。

    Form1 f = new Form1(this);
    f.Show();

来自Form1

构造函数:

    MyListBoxForm _f;
    public Form1(MyListBoxForm f)
    {
        InitializeComponent();
        _f = f;
    }

你的功能:

   void Add()
   {
      _f.listBox3.Items.Add("ex");
   }

编辑:将listbox3设置为internal或public。另一种方法是在列表框类中创建公共方法。实际上取决于您的需求。如果您的要求只是在列表框中添加一些内容并且总是如此,请选择方法方法..

答案 2 :(得分:0)

在表单设计器中,将Design下的Modifiers属性更改为Public。

编辑:我没有说改变代码,但在Visual Studio Designer中。 (PropertyGrid中)