C#学习教程:如何通过XAML为Enum类型的子元素设置MenuItem的IsChecked属性?分享


如何通过XAML为Enum类型的子元素设置MenuItem的IsChecked属性?

我已使用此解决方案将MenuItem绑定到Enum。

枚举值显示正确,但我似乎无法为MenuItem的子项设置默认选中的值。

换句话说,我希望MenuItem默认选中其中一个子项(我正在使用的枚举值)。

我尝试了以下代码,使用了Style和触发的Setter:

              

枚举包含诸如ItemA之类的值,我还在Trigger Value属性中尝试了AnEnum.First0 (如此AnEnum.First 回答的 ),但无济于事。

DataTrigger是否可取? 如果是这样,我怎么能在XAML中写出来? 或者我应该在ItemTemplateMenuItem使用DataTemplate吗?

我也尝试使用SomeSetting.Items相关的方法摆弄代码隐藏,但大多数属性(如Current)都是只读的。

我知道你可以在代码隐藏中编写SomeSettingMenu.ItemsSource = Enum.GetValues(typeof(....)) ,但我又不知道如何以编程方式在MenuItem中选择一个Item。

我也试过这段代码,也不行:

      

enums是我正在使用的不同程序集的命名空间。

任何想法将不胜感激,谢谢你提前!

在您的解决方案中考虑改变

  

  

在你的例子中,你检查标题是否等于刺激“枚举:AnEnum.ItemA”而不是枚举AnEnum成员ItemA。

你可以这样做。 这将绑定到子MenuItem的DataContext,它是第一个项目的“ItemA”。

上述就是C#学习教程:如何通过XAML为Enum类型的子元素设置MenuItem的IsChecked属性?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

    

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/959877.html

发表评论

邮箱地址不会被公开。 必填项已用*标注