c# - 绑定(bind)可空值时未设置值

标签 c# windows-runtime winrt-xaml

大家好,

我有一个绑定(bind)到实现 INotifyPropertyChanged 的​​ TextBox 的 Nullable int 属性,在运行时期间,当我更改 TextBox 的值并失去焦点时。该属性的二传手没有击中。 :-(

有什么想法吗??!

顺便说一句,是的,BindingMode 设置为 TwoWay

最佳答案

我不确定这是否适用于 WinRT,但在 WPF 中您需要在绑定(bind)中指定 TargetNullValue:

<TextBox Text="{Binding myNullableInt, TargetNullValue={x:Static sys:String.Empty}}"/>

这样,当用户删除文本时,它绑定(bind)的属性将更新为null。检查这个SO question供引用。

更新:

不幸的是,WinRT 绑定(bind)中没有TargetNullValue。因此,您可用的选项是采用 @TylerD87 的方法,还是创建并使用转换器将空字符串转换为空值,如 here 所述。 .

关于c# - 绑定(bind)可空值时未设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20970960/

相关文章:

wpf - Windows 8 运行时(WinRT/Windows 应用商店应用/Windows 10 通用应用)与 Silverlight 和 WPF 相比如何?

multithreading - C# WinRT 组件在从 WinJS 调用的 UserControl 构造函数中失败

c#-4.0 - 在 WinRT 上保存带有背景图像的 Canvas

c++ - 有关使用 C++\XAML for Metro 进行 Windows 8 编程的资源和信息

c# - 避免在一个 block 出现故障时关闭整个数据流网络

c# - 如何将自定义选项卡添加到 Team Web Access

C# - 将一个枚举转换为另一个

c# - 我怎样才能插入到两个sql相关的表中?

c# - 相同的方法但不同的签名取决于 .NET 框架版本?

c# - 在 WinRT 中绘制 SVG 文件