在WPF中更改标签的行为以支持点击切换

4
有没有办法在WPF中更改标签(Label)的行为,以支持点击切换?
也就是说,是否可以通过单击来切换Selector.IsSelected属性的值,在"True"和"False"之间切换?
祝好。
4个回答

9
<StackPanel>
    <CheckBox IsChecked="{Binding IsChecked, ElementName=checkbox}" Content="Hello">
        <CheckBox.Template>
            <ControlTemplate TargetType="CheckBox">
                <ContentPresenter/>
            </ControlTemplate>
        </CheckBox.Template>
    </CheckBox>
    <CheckBox x:Name="checkbox" Content="A normal checkbox"/>
</StackPanel>

请注意,上述模板不会根据标签是否被选中而改变其外观。这可能是您需要的东西——如果没有更多信息,很难说。

1
没错,亲爱的Kent;我需要一个做这个的想法,而你的代码给了我( ^_^ );我的问题已经解决。问候。 - amiry jd

2

为了实现这样的行为并使其符合您的喜好,最好使用复选框。

请记住,WPF 中的控件代表的是行为而不是外观。


1

我只是想添加mikelt21重复的帖子中更简单的解决方案:

<CheckBox>
    <Label Content="Your text here"/>
</CheckBox>

0

我能想到的最简单的事情是:

<CheckBox Content="Text goes here"/>

这是内置行为,如果您对文本的位置感到满意(至少在我的语言环境中是在复选框右侧),那么没有理由使它更加复杂。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接