加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

单击标签外部时选中的wpf复选框

发布时间:2020-12-14 19:39:37 所属栏目:资源 来源:网络整理
导读:似乎我的复选框宽度延伸到包含它的网格单元格的范围.因此,如果您检查复选框标签右侧的方式,它仍会切换值.有没有办法让复选框仅在单击标签或复选框时切换,而不对复选框的宽度值进行硬编码? 解决方法 如果将列定义宽度设置为“自动”,则将调整列的大小以适合C
似乎我的复选框宽度延伸到包含它的网格单元格的范围.因此,如果您检查复选框标签右侧的方式,它仍会切换值.有没有办法让复选框仅在单击标签或复选框时切换,而不对复选框的宽度值进行硬编码?

解决方法

如果将列定义宽度设置为“自动”,则将调整列的大小以适合CheckBox.

但是,这可能会破坏您的布局.

另一种方法是将CheckBox包装在StackPanel中.

<Grid Margin="10,10,10" Name="grid1">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="*"/>
        </Grid.ColumnDefinitions>
        <TextBlock Text="Hello"/>
        <StackPanel Grid.Column="1" Orientation="Horizontal">
            <CheckBox Content="Click Me"/>
        </StackPanel>
        <Button Grid.Column="2" Content="Press Me"/>
    </Grid>

从第一个屏幕截图中可以看出,CheckBox的边界框现在位于检查和标签周围,而不是第二个显示的列的整个宽度.

正确的行为:

行为不正确:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读