【问题标题】:Take selected item from listbox in form2 and put it to Form1 to TextBox从form2的列表框中取出选定的项目并将其放入Form1到TextBox
【发布时间】:2016-01-04 23:57:27
【问题描述】:

我正在尝试从 Form2 中的 ListBox 中获取 selectedItem 并将其放入 Form1 中的 TextBox 中,但我的错误是


对象引用未设置为对象的实例


我知道什么是空对象,我知道它在做什么以及什么时候做,但我找不到我的错误。

我在 Form2 中的代码,其中有我的 ListBox

private Form1 mainForm = null;
    public Form2(Form1 callingFrom)
    {
        mainForm = callingFrom as Form1;
        InitializeComponent();
    }
    private void okButton_Click(object sender, EventArgs e)
    {
        this.mainForm.udaje = bankovniUctyList.GetItemText(bankovniUctyList.SelectedItem);
        this.Close();
    }

我在 Form1 中的代码,其中有我的 TextBox

 public string udaje
    {
        get { return predmetBanka.Text; }
        set { predmetBanka.Text = value; bankaTextBox.Text = predmetBanka.Text; }
    }

调试器说,问题就在这里

this.mainForm.udaje = bankovniUctyList.GetItemText(bankovniUctyList.SelectedItem);

我不知道,为什么它是空的。

【问题讨论】:

  • 当您单击“确定”时,ListBox 中是否实际选择了某些内容?
  • 另外,该行上哪个对象为空?
  • @MikeH 我不知道哪个对象为空,但它说:iTextSharp.exe 中发生了“System.NullReferenceException”类型的未处理异常。但是,是的,我实际上已经选择了项目
  • 当您遇到此异常时:将鼠标悬停在该行上的每个项目上(它将显示该项目的当前值)。其中一项将为空。
  • @MikeH 是的,我找到了。错误是抛出“udaje”

标签: c# winforms textbox listbox communicate


【解决方案1】:

我只需要从这里修改

Form2 form = new Form2();

到这里

Form2 form = new Form2(this);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多