Показать атрибут отношения в DataGridView - PullRequest
0 голосов
/ 27 августа 2009

Я хочу показать атрибут отношения в DataGridView. Я использую LINQ to SQL для сопоставления и имею следующие классы:

class Computer
{
    public string Name;
    public User User;
}

class User
{
    public string Name;
}

Я использую DataGridView для отображения некоторых строк объекта Computer, а также хочу иметь один столбец для отображения имени пользователя, связанного с этим компьютером.

Я создал объектный источник данных класса Computer. Я установил свойство DataSource моего BindingSource для этого источника данных и связал мой DataGridView с этим BindingSource. Я добавил столбец в свой DataGridView и установил для свойства DataPropertyName значение //User.Name//, но это не работает. Какой хороший способ сделать это?

Я уже думал о создании дополнительного класса, который наследуется от Computer и имеет дополнительное строковое свойство, которое представляет имя пользователя; но я хочу избежать этого решения.

1 Ответ

2 голосов
/ 27 августа 2009
var computerUsers = from c in mydataContext.Computer
select new {
 computerName = c.Name,
 userName = c.User.Name
};

myDataGridView.datasource = computerUsers;
myDataGridView.dataBind();

и в вашей таблице данных вызовите "computerName" и "userName"

<asp:BoundField DataField="computerName" HeaderText="Computer" />
<asp:BoundField DataField="userName" HeaderText="User" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...