在aspx中绑定列表框值和c#中的文本

问题描述 投票:0回答:1

我有一个ListBox,并希望绑定值和文本。

值和文本取自查询字符串,它们以逗号分隔。

我的代码如下:

var pIDs = Request.QueryString["pIds"];
var pIDsText = Request.QueryString["pText"];
var SeparatedIds = pIDs.Split(',').Distinct().ToArray();
var SeparatedPIdsText = pIDsText.Split(',').Distinct().ToArray();

System.Web.UI.WebControls.ListBox ls = (System.Web.UI.WebControls.ListBox)User_Control_ListBox1.FindControl("lstShowPrograms");

 for (int i = 0; i < SeparatedPIdsText.Length; i++)
 {
      if (!string.IsNullOrEmpty(SeparatedPIdsText[i])) 
          {

                ls.Items.Add(SeparatedPIdsText[i]);
          }

 }

上面的代码只添加了text.I想要设置值和文本。要显示的文本和背景的值(ID)。

asp.net c#-4.0
1个回答
1
投票

ListItem添加到ls.Items而不是string

ls.Items.Add(new ListItem(SeparatedPIdsText[i], SeparatedIds[i]));

只要确保SeparatedIdsSeparatedPIdsText有相同的长度或将有IndexOutOfRangeException

© www.soinside.com 2019 - 2024. All rights reserved.