将 x:Bind 上的 Windows.UI.Xaml.UnhandledExceptionEventArgs 获取到文本框

Getting a Windows.UI.Xaml.UnhandledExceptionEventArgs on x:Bind to a textbox

我正在开发一个简单的 UWP 应用程序。我想让用户输入一些货币价值,在本例中是每小时费率。数据类型为十进制。这是视图模型中的 属性:

private decimal hourly;
public decimal Hourly
{
get => salaryConvUS.Hourly;
set
    {
       Set(ref hourly, value); //Template10 method
       salaryConvUS.Hourly = hourly;
    }
}

这里是 XAML 代码:

<TextBox x:Name="HourlyTextBox" 
     Text="{x:Bind ViewModel.Hourly, Mode=TwoWay}"
     Style="{StaticResource CommonTextboxStyle}" />

在我看来这很简单,但我收到一条错误消息,

App.InitializeComponent.AnonymousMethod__3_0(object sender, Windows.UI.Xaml.UnhandledExceptionEventArgs e)"

在 App.g.i.cs 文件中。我已经搜索过这个错误,但我发现的不适用于这种情况。

可能与它有关的一件事是我知道 Windows 8 个应用程序遇到的问题,因为您无法将文本框之类的东西绑定到十进制数据类型。你必须做某种转换。这就是 UWP 中发生的事情吗?

TextBlock 包含一个字符串值。所以你不能直接将十进制值与 TextBlock 绑定。

使用ToString()方法正确绑定。

你可以使用这样的东西 -

private string hourly;
public string Hourly
{
    //Your Algorithm
}