我有以下转换器:
public class MyConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, string language)
{
Debug.WriteLine(value.GetType());
//The rest of the code
}
public object ConvertBack(object value, Type targetType, object parameter, string language)
{
throw new NotImplementedException();
}
}
以及尝试使用转换器的 XAML:
<ListView ItemsSource="{x:Bind StickersCVS.View}" >
<ListView.ItemTemplate>
<DataTemplate x:DataType="models:StickerCategory">
<TextBlock Foreground="{x:Bind Converter={StaticResource MyConverter}}"/>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
这给了我一个 NPE value.GetType()
,显然传入的值是null
。
如果我更改以下部分:
<TextBlock Foreground="{x:Bind Converter={StaticResource MyConverter}}"/>
到
<TextBlock Foreground="{Binding Converter={StaticResource MyConverter}}"/>
然后它工作。Debug
正确输出StickerCategory
为值的类型。x:Bind
进入转换器的任何原因null
以及如何使其工作x:Bind
?我正在尝试传递DataContext
给我的转换器。