WPF コンボボックスのItemsSourceにEnumのリストをバインドできない
下記のようなユーザーコントロールを作成しました。
<UserControl x:Class="MyCombobox"
...
<ComboBox x:Name="Value" ItemsSource="{Binding MyItemsSource}"/>
さらにMyItemsSourceの依存プロパティを下記のように設定しました。
public partial class MyCombobox : UserControl
{
public MyCombobox ()
{
InitializeComponent();
}
public static readonly DependencyProperty ItemsSourceProperty = DependencyProperty.Register("MyItemsSource",
typeof(IEnumerable<string>),
typeof(MyCombobox),
new FrameworkPropertyMetadata("MyItemsSource");
public IEnumerable<string> MyItemsSource
{
get { return (IEnumerable<string>)GetValue(ItemsSourceProperty); }
set { SetValue(ItemsSourceProperty, value); }
}
}
メインウインドウで下記のように使用しました。
<Window x:Class="MainWindow"
・
・
・
<local:MyCombobox x:Name="FontType" MyItemsSource="{Binding testEnums}"/>
testEnumsは下記の型の変数で、ViewModelに記載されています。
ObservableCollection<string>
コンパイルは通るのですがメインウインドウのxamlに「既定値の型がプロパティ"MyItemsSource"の型と一致しません。」と警告が表示され実行すると例外で落ちてしまいます。
コンボボックスのItemsSourceにEnumのリストをバインドしたいのですがどこを直せばよいのかわかりません。
どなたか何かご存知でしたら、教えてください。。。