Отобразить редактируемый раскрывающийся список в DataGridView для свойства Enum пользовательского класса - PullRequest
0 голосов
/ 15 ноября 2010

Я связываю пользовательский класс с Datagridview и хочу показать Editable комбинированный список для одного из свойств Enum.

Public Class Contact

    Public Enum GenderTypes
        Male
        Female
    End Enum

    Private _Firstname As String
    Private _Lastname As String
    Private _Gender As GenderTypes

    Public Property FirstName() As String
        Get
            Return Me._Firstname
        End Get
        Set(ByVal value As String)
            Me._Firstname = value
        End Set
    End Property

    Public Property LastName() As String
        Get
            Return Me._Lastname
        End Get
        Set(ByVal value As String)
            Me._Lastname = value
        End Set
    End Property

    Public Property Gender() As GenderTypes
        Get
            Return Me._Gender
        End Get
        Set(ByVal value As GenderTypes)
            Me._Gender = value
        End Set
    End Property

End Class

В форме 1 я связываю список (контактов), как показано ниже.

Dim mContacts As List(Of Contact) = New List(Of Contact)
dgContacts.DataSource = mContacts

Теперь, когда я запустил приложение в datagridview, я не создал редактируемый выпадающий список для свойства enum пола моего пользовательского класса. Я пытался создать пользовательский EnumConverter, но не сделал свойство enum редактируемым раскрывающимся списком.

Пожалуйста, дайте мне знать, как я получу редактируемый выпадающий список / выпадающий список в datagridview для моего пользовательского свойства enum класса.

1 Ответ

1 голос
/ 25 ноября 2010

В событии EditingControlShowing вашей таблицы данных установите стиль выпадающего списка в этом столбце со списком в DropDown.Ниже приведен пример.

if (MyGridView.CurrentCell.ColumnIndex.Equals(GenderColumn.Index) && (e.Control is ComboBox))
  {
    var genderCombox = e.Control as ComboBox;
    genderCombox.DropDownStyle = ComboBoxStyle.DropDown;
  }

Это должно сделать ваше поле со списком редактируемым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...