Поле Combox с сеткой данных не заполняется данными - PullRequest
0 голосов
/ 07 октября 2010

я делаю, когда загружается формане данные ... ??

1 Ответ

1 голос
/ 08 октября 2010

Во-первых, предлагаемый вами код даже не скомпилируется - вам не хватает заглавных букв в одной области и точки с запятой в конце последней строки (и это не проблема сборки, но я считаю, что для правильного отображения вы хотите, чтобы пробел после фамилии, а не до). Во-вторых, если вы исправите это, то нет никаких видимых причин для того, чтобы не отображать участников. Вы уверены, что возвращаемое значение GetEmployees содержит хотя бы один элемент?

Примите во внимание следующее:

Наш тип работника ...

public class Employee
{
    public Employee() { }
    public Employee(int id, string firstName, string lastName)
    {
        EmployeeID = id;
        FirstName = firstName;
        LastName = lastName;
    }
    public int EmployeeID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
}

И в пределах события загрузки нашей формы ...

private void myForm_Load(object sender, EventArgs e)
{
    var employeeA = new Employee(28, "Charlie", "Brown");
    var employeeB = new Employee(42, "Familiar", "Stranger");
    var employees = new List<Employee>();
    employees.Add(employeeA);
    employees.Add(employeeB);

    var myDataGridView = new DataGridView();
    var myDataGridComboBoxColumn = new DataGridViewComboBoxColumn();
    myDataGridComboBoxColumn.HeaderText = "Employee";
    myDataGridComboBoxColumn.ValueMember = "ID";
    myDataGridComboBoxColumn.DisplayMember = "Name";
    myDataGridComboBoxColumn.DataSource = employees.Select(employee => new
    {
        Name = employee.LastName + ", " + employee.FirstName,
        ID = employee.EmployeeID
    }).ToList();
    myDataGridView.Columns.Insert(0, myDataGridComboBoxColumn);
    Controls.Add(myDataGridView);
    myDataGridView.Dock = DockStyle.Fill;
}

Результат абсолютный: ожидаемые элементы отображаются в раскрывающемся списке. Попробуй и пройди свой путь, чтобы избавиться от ошибок при сборке, чтобы, по-видимому, волшебным образом исходить из этой точки - ты их не заметил? Обратите внимание, как вам удалось «увидеть» что-либо.

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