asp.net 列表框文本/值
本文关键字:文本 net 列表 asp | 更新日期: 2023-09-27 18:36:03
基本上我需要填充一个列表框的.带有字符串及其 .带有整数的值。通过这样做:
lbUsers.DataSource = new UserManagerBO().GetGlobalUserList();
lbUsers.DataBind();
这会为两者分配一个字符串。值和 .发短信。
现在我知道 GetGlobalUserList() 返回一个字符串[],这就是我得到上述行为的原因,那么如何返回 int 值和字符串值呢?也许去2D阵列?然后如何将这些结果绑定到列表框?
选项 1让该方法返回string[]
值选择SelectedIndex
。
选项 2在 Damith 回答时创建自定义类。
选项 3一个Dictionary<int, string>
就足够了。
Dictionary Keys
ListBox Value
,Dictionary Values
ListBox Text
。
假设这是您的方法返回的字典
//Adding key value pair to the dictionary
Dictionary<int, string> dStudent = new Dictionary<int, string>();
dStudent.Add(0, "Eena");
dStudent.Add(1, "Meena");
dStudent.Add(2, "Deeka");
dStudent.Add(3, "Tom");
dStudent.Add(4, "Dick");
dStudent.Add(5, "Harry");
dStudent.Add(6, "Yamla");
dStudent.Add(7, "Pagla");
dStudent.Add(8, "Dewana");
dStudent.Add(9, "Guru");
dStudent.Add(10, "Sholay");
第 2 步:
现在是时候将字典对与列表框绑定了。下面的代码绑定到列表框。
//binding to the list
lst.DataTextField = "Value";
lst.DataValueField = "Key";
lst.DataSource = dStudent;
lst.DataBind();
使用用户属性创建自定义类。 当您处理全局用户时,可以重新使用它
public class CustomClass()
{
public int ID { get; set; }
public int Name { get; set; }
}
从GetGlobalUserList()
返回CustomClass
对象的集合,需要更改GetGlobalUserList
方法的签名和逻辑。你做到了,
lbUsers.DataSource = new UserManagerBO().GetGlobalUserList();
设置列表框的DataTextField
和DataValueField
lbUsers.DataTextField = "Name";
lbUsers.DataValueField = "ID";
lbUsers.DataBind();