原文:
Bind Enum to Combobox.SelectedIndex Do you mean that you want to bind a variable (not a property) to ComboBox.SelectedIndex? If so, I think that the better method to do this is bind a property to ComboBox.SelectedItem. The following example shows how to bind a property to the ComboBox.SelectedItem. If you want to have more functionality from the binding, you should have the property is a dependency property.
Code Snippet
Bind Enum to Combobox.SelectedIndex <Window x:Class="LearningSolution.MainWindow"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex xmlns:system="clr-namespace:System;assembly=mscorlib"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex xmlns:local="clr-namespace:LearningSolution"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex Name="TheWindow">
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <Window.Resources>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <ObjectDataProvider x:Key="EnumValues"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex MethodName="GetValues"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex ObjectType="{x:Type system:Enum}">
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <ObjectDataProvider.MethodParameters>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <x:Type TypeName="local:LevelEnum" />
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex </ObjectDataProvider.MethodParameters>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex </ObjectDataProvider>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <DataTemplate x:Key="EnumValueTemplate">
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <TextBlock Text="{Binding}"/>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex </DataTemplate>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex </Window.Resources>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <StackPanel>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <ComboBox ItemsSource="{Binding Source={StaticResource EnumValues}}"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex ItemTemplate="{StaticResource EnumValueTemplate}"
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex SelectedItem="{Binding ElementName=TheWindow, Path=TheLevel, Mode=OneWayToSource}"/>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex <Button Click="Button_Click">Watch</Button>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex </StackPanel>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex </Window>
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex public partial class MainWindow : Window
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex {
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex public LevelEnum TheLevel { get; set; }
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex private void Button_Click(object sender, RoutedEventArgs e)
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex MessageBox.Show(this.TheLevel.ToString());
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex }
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex public enum LevelEnum { None = 0, First = 1, Second = 2, Third = 3 }
Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex Bind Enum to Combobox.SelectedIndex For more information about binding and dependency property, you could refer to the following links.
http://msdn2.microsoft.com/en-us/library/ms753192.aspx http://msdn2.microsoft.com/en-us/library/ms750612.aspx