wpf – 工具栏中的CheckBox行为差异或控件

wpf – 工具栏中的CheckBox行为差异或控件,第1张

概述当我将它作为控件放在用户控件或窗口上时,我可以将CheckBox控件的isChecked属性设置为bool属性.但是,如果我将它放在工具栏中,它甚至不可见,除了可能是薄的左边或右边(但绑定仍然有效).如果我放入ContextMenu,它看起来很好,如选中或未选中,但绑定目标不受影响. 这是Window.Resources中的ContextMenu定义: <ContextMenu x:Key="Co 当我将它作为控件放在用户控件或窗口上时,我可以将CheckBox控件的isChecked属性设置为bool属性.但是,如果我将它放在工具栏中,它甚至不可见,除了可能是薄的左边或右边(但绑定仍然有效).如果我放入ContextMenu,它看起来很好,如选中或未选中,但绑定目标不受影响.

这是Window.Resources中的ContextMenu定义:

<ContextMenu x:Key="ContentMenu" DataContext="{Binding MyVIEw}">  <CheckBox IsChecked="{Binding Path=IsRed}"/></ContextMenu>

这是包含CheckBox和带有CheckBox的Toolbar的StackPanel:

<StackPanel Height="20" OrIEntation="Horizontal" DockPanel.Dock="top" DataContext="{Binding MyVIEw}">    <CheckBox IsChecked="{Binding Path=IsRed}"/> <Toolbar margin="10,0"><CheckBox WIDth="18" Height="18" IsChecked="{Binding Path=IsRed}"/> </Toolbar> </StackPanel>

我只会问

1)如果有人可以建议工具栏问题的解决方案(可能是另一个模板?),

2)定义上下文菜单的DataContext的正确方法(这似乎是实际问题).

解决方法 我明白你的意思了,chekBox现在看起来像一个切换按钮.如果您查看工具栏的controltemplate,您会看到它调整某些类型的子控件的控件模板.

如果您将CheckBox放在某些布局容器(如Stackpanel,GrID等)中,那么有一个技巧或错误,那么它的controltemplate不会被调整:

<Toolbar>  <GrID><CheckBox IsChecked="True" VerticalAlignment="Center">Test</CheckBox></GrID></Toolbar>
总结

以上是内存溢出为你收集整理的wpf – 工具栏中的CheckBox行为差异或控件全部内容,希望文章能够帮你解决wpf – 工具栏中的CheckBox行为差异或控件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1082184.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存