2015-04-07 34 views
0

我有兩個類EmployeeDepartment如下的DataGridView的列表中添加多個行中列出對象

class Employee 
{ 
    public string ID {get;set;} 
    public string Name {get;set;} 
    public List<Departments> AssociatedDepartment {get;set;} 
} 

class Department 
{ 
    public string DepartmentID {get;set;} 
    public string DepartmentName {get;set;} 
} 

我綁定一個DataGridViewList<Employee>。它顯示僱員的名單Employees但不是Department

List<Employee> employeeList = GetEmployeeList(); 

if (employeeList != null) 
{ 
    grdResponse.DataSource = employeeList; 
} 

現在它顯示以下數據。

ID Name 
--------- 
1 Joe 
2 Tim 

我應該怎麼做才能得到關注?

ID Name Department 
-------------------- 
1 Joe Software 
1 Joe Management 
2 Tim Hardware 
+0

根據您的設計'的員工可以擁有多個部門公開名單 AssociatedDepartment {get; set;}' – CodingDefined

+0

是'Employee'可以有多個'Department'。 – Sukanya

回答

1

可以延長Employee類只得到屬性(列將是隻讀)

class Employee 
{ 
    public string ID { get; set; } 
    public string Name { get; set; } 

    public string Departments 
    { 
     get 
     { 
      if (AssociatedDepartment == null || AssociatedDepartment.Count == 0) 
       return string.Empty; 
      return string.Join(", ", AssociatedDepartment.Select(d => d.DepartmentName)); 
     } 
    } 

    public List<Department> AssociatedDepartment { get; set; } 
} 
1

添加以下屬性的員工:

public string Department 
{ 
    get 
    { 
     string departments = string.Empty; 
     foreach (Department department in AssociatedDepartment) 
     { 
      if (departments.Length != 0) 
       departments += ", "; 
      departments += department.DepartmentName; 
     } 
     return departments; 
    } 
} 
相關問題