没有获得有关如何将文本块添加到XAML中的复选框内容属性的正确解决方案。 问题是没有为其他语言正确显示复选框内容。 所以我需要添加一个文本块并使用" CharacterEllipsis"来应用texttrimming。 请帮助您使用示例XAML代码
我为自定义复选框定义了其他属性:
<uxCCl:UxCheckBox x:Name="btnShowHide"
Height="24"
MaxWidth="200"
Margin="16,0,0,0"
HorizontalAlignment="Left"
Command="{Binding Path=ShowHideErrorOutCommand}"
Foreground="#638EAC"/>
所以这样做就不行了:
<Checkbox.Content>
<Textblock> <Text></Textblock>
</Checkbox.Content>
请提出一些解决方案。
答案 0 :(得分:2)
只需将TextBlock添加到CheckBox内容中,如下所示:
<CheckBox>
<CheckBox.Content>
<TextBlock Text="text block" TextTrimming="CharacterEllipsis"></TextBlock>
</CheckBox.Content>
</CheckBox>
编辑:
将依赖项属性添加到自定义CheckBox:
public string TextContent
{
get { return GetValue(TextContentProperty).ToString(); }
set { SetValue(TextContentProperty, value); }
}
public static readonly DependencyProperty TextContentProperty = DependencyProperty.Register(
"TextContent",
typeof(string),
typeof(YOURCLASSNAME),
new PropertyMetadata(string.Empty)
);
将绑定添加到TextBlock的Text属性:
<TextBlock Text="{Binding RelativeSource={RelativeSource AncestorType={x:Type UserControl}}, Path=TextContent}"></TextBlock>
答案 1 :(得分:0)
<CheckBox.ContentTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" TextTrimming="CharacterEllipsis"/>
</DataTemplate>
</CheckBox.ContentTemplate>