gpt4 book ai didi

c# - CSharp .NET 3.5 Windows Form DataBinding ComboBox to a List<>

转载 作者:行者123 更新时间:2023-11-30 22:48:09 24 4
gpt4 key购买 nike

好的,首先我有以下代码工作..虽然我的问题是这样;我应该像下面的示例一样对组合框数据绑定(bind)进行编码,还是有更简单/更有效的方法?

首先,我需要操作从数据库返回的结果以显示更具描述性的含义:

(我正在为键/值对使用一个基本类)

class WashBayDesc
{
public string Key { get; set; }
public string Text { get; set; }
}

现在我从数据读取器中检索数据并进行我需要的操作,然后将结果添加到列表项中:

    var washbaydata = new List<WashBayDesc>();

// Read through the available cashboxes and populate a list/combobox
while (rdr.Read())
{
string sWashBayDesc = null;
string sWB = rdr["washbay"].ToString();
if (sWB.StartsWith("3"))
{
sWashBayDesc = "Bay " + sWB.Substring(1);
}
else
{
sWashBayDesc = "Auto " + sWB.Substring(1);
}

washbaydata.Add(new WashBayDesc { Key = sWB, Text = sWashBayDesc });
}

// Now bind the hashtable (with our bay selectors) to the dropdown
cmbCashBoxes.DataSource = washbaydata;
cmbCashBoxes.ValueMember = "Key";
cmbCashBoxes.DisplayMember = "Text";

所以..我的想法是我可以简单地将 ComboBox 数据源绑定(bind)到 washbaydata 列表对象..这很好。

下一部分是检索所选项目的值(即不是文本描述,而是值或键本身)。这是我认为可能不太正确的一点,尽管它再次起作用......

    WashBayDesc myRes = new WashBayDesc();
myRes = (WashBayDesc)cmbCashBoxes.SelectedItem;
string sWashBayCashBox = myRes.Key;

所以结果是我的字符串 sWashBayCashBox 具有选定的键...

我想它可行,这很好,但是有没有更简单/更简洁的方法?

最佳答案

string sWashBayCashBox = (string)cmbCashBoxes.SelectedValue;

关于c# - CSharp .NET 3.5 Windows Form DataBinding ComboBox to a List<>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1871534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com