wpf - DataTemplate 绑定(bind)中未调用 ValueConverter

标签 wpf data-binding datatemplate

我有一个使用 DataTemplateComboBoxDataTemplate 包含一个绑定(bind),该绑定(bind)使用 IValueConverter 将枚举值转换为字符串。问题是值转换器从未被调用。如果我在 StatusToTextConverter.Convert() 中放置断点,则永远不会命中它。

这是我的 XAML:

    <ComboBox ItemsSource="{Binding Path=StatusChoices, Mode=OneWay}">
        <ComboBox.ItemTemplate>
            <DataTemplate>
                <TextBlock Text="{Binding Converter={StaticResource StatusToTextConverter}}"/>
            </DataTemplate>
        </ComboBox.ItemTemplate>
    </ComboBox>

我认为这就是隐式绑定(bind)到 DataTemplate 所呈现的值的方式。我错了吗?

编辑:对于上下文:我打算在 DataTemplate 中与 TextBox 一起显示一个 Image。如果我无法使 TextBox 绑定(bind)正常工作,那么我认为 Image 也无法正常工作。

最佳答案

在某些情况下,您必须为绑定(bind)显式提供路径。试试这个:

<TextBlock Text="{Binding Path=.,Converter={StaticResource StatusToTextConverter}}"/>

关于wpf - DataTemplate 绑定(bind)中未调用 ValueConverter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2701057/

相关文章:

WPF - 使用 DataTemplates 将数据绑定(bind)到 StackPanel

c# - DataGrid 更新添加的行但不更新添加的列

wpf - 将 DataTemplate 应用到网格

wpf - 如何将 DataTemplate 数据类型绑定(bind)到接收 ViewModels DI 注入(inject)的依赖项的 View

wpf - 单独的 ResourceDictionary 中的 DataTemplate

wpf - 如何使用 Prism 6 正确制作 CanExecute 触发器

c# - 子属性更改时,FreezableCollection 不提供更改通知

c# - DataBinding 到 UserControl 内部的 UserControl

wpf - 从 ListBox 中删除所选项目时删除选择

c# - 键盘焦点到 DataGrid