WPF绑定Formatexception

时间:2010-10-31 01:29:16

标签: wpf binding

在C#Wpf应用程序中,我有一个XML Binded数据源。

我想像这样更新一些xml:

loop.Innerxml = "false"

此值与控件绑定(作为布尔值)。但是,在执行此操作时,会出现一个形式感觉,即字符串不是有效的布尔值(逻辑)。但是,如果false没有作为字符串输入,我无法更新innerxml ...

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

当绑定发生时,您可以使用转换器将字符串转换为布尔值。

有关转换器的详情,请参阅http://www.scip.be/index.php?Page=ArticlesNET22&Lang=EN

代码示例:

[ValueConversion(typeof(string), typeof(bool))]
public class StringToBoolConverter : IValueConverter
{
  public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
  {
    return TypeDescriptor.GetConverter(typeof(bool)).ConvertFrom(value);
  }

  public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
  {
    throw new NotSupportedException();
  }
}