小编cod*_*ode的帖子

WPF(.net 3.5)绑定到数字(int,dbl)但允许用户不输入任何内容

如果绑定到可以为空的double(或int)的视图模型属性,那么如何允许用户不指定任何内容.

我看了验证,但我看不出如何能帮助你.

看起来如果文本框被清空,WPF将其视为空字符串,然后不会将其放入vm proptery中.

所以我能想到的两种方法是:

  1. vm属性是一个经过验证并更新支持模型的字符串.
  2. 表示没有值的特殊代码(在我的情况下,dbl不应该是neg,所以-9可能是null ...但不喜欢幻数的想法)

还有其他想法吗?我错过了什么吗?

科迪

validation wpf binding

4
推荐指数
1
解决办法
567
查看次数

在WPF中如何在代码中更改DataTemplate的Textblock的文本绑定?

我有一个ListBox,其ItemsSource绑定到一个对象列表.Listbox有一个ItemTemplate,其中包含一个包含TextBlock的DataTemplate.文本块的Text绑定到对象的Name属性(即Text ="{Binding Name}").

我想提供一个单选按钮来显示同一列表的不同视图.例如,允许用户在Name属性和ID属性之间切换.

我在2381740找到了一个SO答案,但我也在数据模板中设置了边框和文本框样式(参见下面的代码).

反正只是重置Textblock绑定?我不想重新创建整个datatemplate.实际上我甚至不确定如何做到这一点,是否有一种简单的方法将xaml转换为代码?

谢谢科迪

<DataTemplate>
  <Border Margin="0 0 2 2"
          BorderBrush="Black"
          BorderThickness="3"
          CornerRadius="4"
          Padding="3">
      <TextBlock Style="{StaticResource listBoxItemStyle}"
                 Text="{Binding Name}" />
  </Border>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)

wpf binding textblock datatemplate

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

binding ×2

wpf ×2

datatemplate ×1

textblock ×1

validation ×1