我遇到了这个问题。在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!我非常困惑为什么会发生这种情况,我该如何纠正呢?任何想法都表示赞赏?非常感谢。
答案 0 :(得分:2)
如果我更改视图模型强制转换部分(因为您没有提供该代码),代码适用于我:
x会导致我在文本框中输入的内容,例如123
try
{
var x = Convert.ToInt32(powerText.Text);
}
catch (FormatException ex)
{
string str = ex.Message;
}
因此,我们需要查看有关((LiveImageViewModel)this.DataContext).PowerPosition
个对象的更多信息,以了解为什么您没有看到期望的内容