Hur*_*lan 4 wpf checkbox binding contextmenu toolbar
我可以得到一个CheckBox控件的isChecked属性设置为一个bool属性时,我把它作为一个用户控件或窗口的控制.但是,如果我把它放在一个工具栏,它不是可能除了薄左侧或右侧边缘偶可见(但绑定仍然有效).如果我把在一个ContextMenu,如选中或取消选中,但结合靶标没有影响它出现的罚款.
这是Window.Resources中的ContextMenu定义:
<ContextMenu x:Key="ContentMenu" DataContext="{Binding MyView}">
<CheckBox IsChecked="{Binding Path=IsRed}"/>
</ContextMenu>
Run Code Online (Sandbox Code Playgroud)
这是包含CheckBox和带有CheckBox的ToolBar的StackPanel:
<StackPanel Height="20" Orientation="Horizontal" DockPanel.Dock="Top" DataContext="{Binding MyView}">
<CheckBox IsChecked="{Binding Path=IsRed}"/>
<ToolBar Margin="10,0,0,0">
<CheckBox Width="18" Height="18" IsChecked="{Binding Path=IsRed}"/>
</ToolBar>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
我只会问
1)如果有人可以建议工具栏问题的解决方案(可能是另一个模板?),
2)定义DataContext上下文菜单的正确方法(这似乎是实际问题).
Gra*_*fix 10
我明白你的意思了,chekbox现在看起来像一个切换按钮.如果查看工具栏的controltemplate,您会看到它调整某些类型的子控件的控件模板.
如果您将Checkbox放在某些布局容器(如Stackpanel,Grid等)中,那么有一个技巧或错误,那么它的controltemplate不会被调整:
<ToolBar>
<Grid><CheckBox IsChecked="True" VerticalAlignment="Center">Test</CheckBox></Grid>
</ToolBar>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2518 次 |
| 最近记录: |