При заполнении комбинированного списка данными из таблицы данных, есть ли способ «добраться до» других «членов» таблицы данных? - PullRequest
0 голосов
/ 22 июля 2011

Хорошо, я не думаю, что этот вопрос задавался здесь - или, по крайней мере, поиск не нашел его ...

У меня есть выпадающий список, который я заполняю так:

DataTable companies = master.master_getCompanies();  // returns a DataTable
cboCompany.DataSource = companies;
cboCompany.DisplayMember = "CompanyName";
cboCompany.ValueMember = "SQLID";

Это прекрасно работает

Позже, после того, как пользователь выберет элемент из выпадающего меню, есть ли способ получить другие столбцы из предыдущего источника данных?

Я надеюсь получить что-то вроде этого:

string foo = ((some_cast)cboCompany.SelectedItem).members["column_bar"];

Я действительно понятия не имею, возможно ли что-то подобное - просто кажется, что я смогу это сделать.

Я знаю, что могу хранить данные в памяти и использовать SQLID (ValueMember), который дает мне выпадающий список для повторного поиска в другом столбце - и я полагаю, что это мое запасное решение, если к утру ни у кого нет лучшей идеи:)

Спасибо за помощь, ребята (и девочки!)

Ответы [ 2 ]

1 голос
/ 22 июля 2011

Вы можете попробовать это (я пробовал в VS2010):

var row = (DataRowView)cboCompany.SelectedItem;

var value = row["{column name}"];

HTH

0 голосов
/ 22 июля 2011
internal class Company
{
    public string CompanyName { get; set; }
    public string SQLID { get; set; }
    public string column_bar { get; set; }
}

...

    List<Company> list = new List<Company>();
    list.Add(new Company { CompanyName = "aaaaaa", SQLID = "ssssss", column_bar = "ddddddd" });
    list.Add(new Company { CompanyName = "zzzzzzz", SQLID = "xxxxxx", column_bar = "ccccccccc" });
    cboCompany.DataSource = list;
    cboCompany.DataBind();

    // ...
    string foo = ((List<Company>)cboCompany.DataSource).ElementAt(cboCompany.SelectedIndex).column_bar;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...