从组合框中抓取显示构件并用于填充文本框

时间:2013-11-20 19:20:09

标签: c# combobox

我有一个由数据适配器填充的组合框。我根本没有填充组合框的问题,但我想弄清楚如何抓住显示构件而不是选定的值。

cotcommand = new SqlCommand();
                cotguestadapter = new SqlDataAdapter();
                cotcommand.Connection = cottageconnect;
                cotcommand.CommandText = "SELECT Phone, (\"Last Name\" + ', ' + \"First Name\") AS NAME FROM Guests ORDER BY NAME";
                cotguestadapter.SelectCommand = cotcommand;
                cotguestadapter.Fill(cotguestdataset);
                cboGuests.DataSource = cotguestdataset.Tables[0];
                cboGuests.DisplayMember = "NAME";
                cboGuests.ValueMember = "Phone";

我可以轻松获取值成员并使用它执行我想要的操作,但我真的想拉出显示成员(这是连接的名称)并在文本框中显示它。我需要一个确认框的显示名称,用户可以选择是,然后我的代码将在那时将注册插入数据库。

我可以从组合框中获取显示成员并在文本框中使用它吗?

1 个答案:

答案 0 :(得分:0)

本例中的DisplayMember 实际上是列名,因此您只需提取基础数据绑定项并获取值:

var someDisplay = ((DataRowView) someItem).Row[comboBox1.DisplayMember];
//someDisplay is still an object, just cast or convert to what you want.