我在默认模板中使用TextBox进行自定义控制.
自定义控件具有以下两个依赖项属性(以及其他属性):
自定义控件具有以下两个依赖项属性(以及其他属性):
SelectedValue,NullText(当没有选择任何内容并提供值时,文本出现在TextBox中)
当SelectedValue为null并且NullText不为null时,我想将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定义,我得到’type没有公共TypeConverter类’Exception
请问你怎么解决?
解决方法
我自己找到了解决方案:
问题出在RelativeSource上.
它应该是这样的:
问题出在RelativeSource上.
它应该是这样的:
<TextBox.Text> <MultiBinding Converter="{StaticResource myConverter}"> <Binding RelativeSource="{RelativeSource TemplatedParent}" Path="SelectedValue"/> <Binding RelativeSource="{RelativeSource TemplatedParent}" Path="NullText"/> </MultiBinding> </TextBox.Text>