【问题标题】:Show sum of different comboboxes shown in textboxes into one textbox将文本框中显示的不同组合框的总和显示到一个文本框中
【发布时间】:2021-01-05 08:09:36
【问题描述】:

我想要我从不同的组合框中选择的不同值的总值,这些组合框显示在自己的文本框中。

 private void tbWater1_TextChanged(object sender, TextChangedEventArgs e)
    {
        if(tbWater1 is null)
        {
            if (!string.IsNullOrEmpty(tbWater1.Text) && !string.IsNullOrEmpty(tbWater2.Text) && !string.IsNullOrEmpty(tbMais.Text))
                tbTotaal.Text = (Convert.ToInt32(tbWater1.Text) + Convert.ToInt32(tbWater2.Text) + Convert.ToInt32(tbMais.Text)).ToString();
        }
        
    }

这是迄今为止我所拥有的一个文本框,它显示了组合框的值,但它没有在我想要其中的总和的文本框中显示总和。

有什么建议吗?

【问题讨论】:

  • if(tbWater1 is null) => if(tbWater1 != null)

标签: c# wpf combobox textbox


【解决方案1】:

您永远不会进入第一个if 块,因为tbWater1_TextChangedtbWater1 的事件处理程序,因此tbWater1 在被调用时不是null

你可以去掉外面的if,只留下:

if (!string.IsNullOrEmpty(tbWater1.Text) && !string.IsNullOrEmpty(tbWater2.Text) && !string.IsNullOrEmpty(tbMais.Text))
{
    tbTotaal.Text = (Convert.ToInt32(tbWater1.Text) + Convert.ToInt32(tbWater2.Text) + Convert.ToInt32(tbMais.Text)).ToString();
}

【讨论】:

  • 如果我将外部 if 留在外面,我会收到一条错误消息,指出未在对象的副本上设置对象引用
  • 我无法关注你。哪个副本?如果您对多个组合框使用相同的事件处理程序,则保留外部 if 语句并检查 tbWater1 不为空:if(tbWater1 != null) 另外请花一点时间阅读有关 Minimal Complete Verifiable Example 的信息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-21
  • 2019-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多