【问题标题】:How to pass targetType parameter to the Convert() method of the IValueConverter instance in XAML如何将 targetType 参数传递给 XAML 中 IValueConverter 实例的 Convert() 方法
【发布时间】:2018-06-06 10:40:29
【问题描述】:

IValueConverter实例的Converter方法可以获取一些参数:

Convert(object value, Type targetType, object parameter, CultureInfo culture);

如何从 XAML 中传递 targetType 参数?

【问题讨论】:

    标签: c# wpf xaml


    【解决方案1】:

    你不传递 targetType,框架会为你传递,这取决于它需要转换成什么类型​​。

    考虑模板 10 中的 StringFormatConverter:https://github.com/Windows-XAML/Template10/wiki/Converters

    <Page.Resources>
        <converters:StringFormatConverter x:Key="StrFormatConverter" />    
    </Page.Resources>
    ...
    <TextBlock Text="{Binding DateTimeValue, Converter={StaticResource StrFormatConverter}, ConverterParameter=\{0:D\}}" />
    

    在这种情况下,系统需要一个String,所以它将'String'作为targetType参数传入。

    您应该确认它所期望的类型是您准备转换成的类型。

    【讨论】:

      猜你喜欢
      • 2014-10-13
      • 1970-01-01
      • 2016-06-01
      • 1970-01-01
      • 2020-07-29
      • 2016-09-24
      • 2021-08-14
      • 1970-01-01
      • 2020-08-22
      相关资源
      最近更新 更多