3

Windows フォームを使用しています。基本クラスの DisplayMember と同じプロパティが必要ですか? 授業がある

public class MyViewModel
{
    public int Id { get; set; }
    public Type Type { get; set; }
}

私のコンボボックスにType.Nameが表示されるようにします。

List<MyViewModel> list = new List<MyViewModel>();
list.Add(new MyViewModel(){ Id = 1, Type.GetType(int)});
list.Add(new MyViewModel(){ Id = 2, Type.GetType(string)});
//how i must to config displayMember???
myComboBox.DisplayMember = "Type.Name";
myComboBox.ValueMember = "Id";
myComboBox.DataSoutce = list;

しかし、コンボボックスに表示する Type.Name を取得できません。手伝って頂けますか?

4

2 に答える 2

1

次の 2 つのプロパティを持つ新しいクラスを作成する必要があります。

class MyViewModel
{
    public string TypeName {get; set; }
    public string Id {get; set; }
}

// generate the datasource list.
List<MyViewModel> list = new List<MyViewModel>();
list.Add(new MyViewModel(){ Id = 1, TypeName = typeof(int).Name});
list.Add(new MyViewModel(){ Id = 2, TypeName = typeof(string).Name});

// how i must to config displayMember
myComboBox.DisplayMember = "TypeName";
myComboBox.ValueMember = "Id";
myComboBox.DataSoutce = list;
于 2013-08-29T13:57:38.033 に答える