本文介绍了如何在XAML中使用给定枚举的所有项目来填充WPF组合框?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

说我有一个枚举有四个值:

Say I have an enum with four values:

public enum CompassHeading
{
    North,
    South,
    East,
    West
}
<ComboBox ItemsSource="{Binding WhatGoesHere???}" />

理想情况下,我不必为此设置C#代码。

Ideally I wouldn't have to set up C# code for this.

推荐答案

您可以使用ObjectDataProvider执行此操作:

You can use the ObjectDataProvider to do this:

<ObjectDataProvider MethodName="GetValues" 
    ObjectType="{x:Type sys:Enum}" x:Key="odp">
    <ObjectDataProvider.MethodParameters>
        <x:Type TypeName="local:CompassHeading"/>
    </ObjectDataProvider.MethodParameters>
</ObjectDataProvider>

<ComboBox ItemsSource="{Binding Source={StaticResource odp}}" />

我在这里找到了解决方案:

I found the solution here:

这篇关于如何在XAML中使用给定枚举的所有项目来填充WPF组合框?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-20 02:55