如何将枚举添加到WPF上下文菜单

3
我有一个枚举“HelperMenu”,我想将它添加到WPF中的文本框中。 但它不起作用,我不知道我在这里做错了什么:

枚举:

 public enum HelperMenu
 {
    Klant,
    Eindklant,
    Email,
    Telfoonnummer,
    GSM
 }

XAML 代码:
 xmlns:sys="clr-namespace:System;assembly=mscorlib"
 xmlns:data="clr-namespace:RFPModule.GUI"

 <UserControl.Resources>
    <ObjectDataProvider x:Key="Menu" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
        <ObjectDataProvider.MethodParameters>
            <x:Type TypeName="data:HelperMenu"/>
        </ObjectDataProvider.MethodParameters>
    </ObjectDataProvider>
</UserControl.Resources>

<TextBox>
    <TextBox.ContextMenu>
        <ContextMenu ItemsSource="{Binding Menu}" />
    </TextBox.ContextMenu>
</TextBox>

任何建议吗?
提前感谢!
1个回答

6

您需要将ItemsSource绑定更改为:

<ContextMenu ItemsSource="{Binding Source={StaticResource Menu}}" />

您当前的绑定方式是“绑定到此DataContextMenu属性”,而您想表达的是“绑定到资源,其Key为Menu”。


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