【问题标题】:WPF TextBox.Text with MultiBindingWPF TextBox.Text 与 MultiBinding
【发布时间】:2010-02-02 15:26:27
【问题描述】:

我在默认模板中有一个带有文本框的自定义控件。 自定义控件具有以下 2 个依赖属性(以及其他属性):

SelectedValue、NullText(未选择任何内容并提供值时出现在 TextBox 中的文本)

SelectedValue 为空且NullText 不为空时,我想将 TextBox.Text 设置为 NullText 值。

<TextBox.Text>                                              
 <MultiBinding Converter="{StaticResource myConverter}">
   <Binding RelativeSource="TemplatedParent" Path="SelectedValue"/>
   <Binding RelativeSource="TemplatedParent" Path="NullText"/>
 </MultiBinding>                                              
</TextBox.Text>

我有一个 IMultiValueConverter:

public class MyConverter : IMultiValueConverter
{}

有了这个 XAML 定义,我得到了“类型没有公共 TypeConverter 类”异常

请问你是怎么解决的?

【问题讨论】:

  • 抱歉,没有意识到您实际上在发布答案,我以为您只是在更新问题(已删除反对票)
  • OK :) 我现在该怎么办?因为问题仍然悬而未决
  • 与其将您的解决方案发布为编辑,不如将您的解决方案发布为答案,并将其标记为答案。

标签: wpf textbox triggers controltemplate multitrigger


【解决方案1】:

我自己找到了解决方案: 问题出在RelativeSource 上。 它应该是这样的:

<TextBox.Text>                                              
 <MultiBinding Converter="{StaticResource myConverter}">
   <Binding RelativeSource="{RelativeSource TemplatedParent}" Path="SelectedValue"/>
   <Binding RelativeSource="{RelativeSource TemplatedParent}" Path="NullText"/>
 </MultiBinding>                                              
</TextBox.Text>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-22
    • 2011-03-09
    • 2015-04-28
    • 2018-09-03
    • 2019-10-01
    • 2015-09-20
    • 2012-09-22
    • 2023-03-27
    相关资源
    最近更新 更多