WPF TextBox显示1而不是0

时间:2013-08-29 16:02:40

标签: c# wpf textbox

我遇到了这个问题。在TextBox.text的调试模式下观察到0时,WPF TextBox显示1而不是0。这是TextBox的xmal代码:

<TextBox Name="powerText" ToolTip="Enter the power value to go to" Width="100"
VerticalAlignment="Center" />

以下是按钮单击的C#代码,用于触发TextBox的0设置事件:

private void Set_Click(object sender, RoutedEventArgs e)
{
    if (powerText.Text.Length > 0)
    {
        try
        {
            ((LiveImageViewModel)this.DataContext).PowerPosition = 
Convert.ToInt32(powerText.Text);
        }
        catch (FormatException ex)
        {
            string str = ex.Message;
        }
    }
}

观察到powerText.Text为0,但UI显示为1!我非常困惑为什么会发生这种情况,我该如何纠正呢?任何想法都表示赞赏?非常感谢。

1 个答案:

答案 0 :(得分:2)

如果我更改视图模型强制转换部分(因为您没有提供该代码),代码适用于我:

x会导致我在文本框中输入的内容,例如123

            try
            {
                var x = Convert.ToInt32(powerText.Text);
            }
            catch (FormatException ex)
            {
                string str = ex.Message;
            }

因此,我们需要查看有关((LiveImageViewModel)this.DataContext).PowerPosition个对象的更多信息,以了解为什么您没有看到期望的内容