如何在 asp.net 的列表框中获取所选值
本文关键字:获取 列表 asp net | 更新日期: 2023-09-27 18:08:34
foreach (ListItem item in ListBoxMembers.Items)
{
if (item.Selected)
{
countSelected += 1;
}
}
for (int counter = 0; counter < countSelected; counter++)
{
string firstName = ListBoxMembers.SelectedItems[counter].Value;
}
这不会返回所选值。我哪里出错了?它抛出的错误是System.Web.UI.WebControls 不包含 listboxmembers.selectedItems 错误的定义
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using MySql.Data.MySqlClient;
using MySql.Data;
using System.Web.Security;
using System.Data;
using System.Web.UI.WebControls;
这些是我正在使用的名称空间。
这就是我要做的
for (int counter = 0; counter < countSelected; counter++)
{
//To get User ID
string firstName=ListBoxMembers.SelectedItems[counter].Value;
// string firstName = ListBoxMembers.Items[counter].Value;
string GUserIDQueryText = "SELECT UserID FROM tbl_user WHERE FirstName ";
int userID = Convert.ToInt32(server.performQuery(GUserIDQueryText, firstName, MySqlDbType.VarChar));
//Insert into tbl_userGroups
string insertIDText = "INSERT INTO tbl_usergroups
(tbl_group_GroupID,tbl_user_UserID) VALUES(@tbl_group_GroupID,@tbl_user_UserID)";
...
}
我想将所有选定的用户添加到表中。
它抛出的错误是 System.Web.UI.WebControls 不包含 listboxmembers.selectedItems 是否缺少目录或程序集指令。为什么我无法使用选定的项目
countSelected = ListBoxMembers.Items.Cast<ListItem>().Where(i => i.Selected).Count();
如果您尝试获取所有选定的项目,您可以这样做
var selectedNames = ListBoxMembers.Items.Cast<ListItem>()
.Where(i => i.Selected)
.Select(i => i.Value)
.ToList()
List<string> selectedFirstNames = new List<string>();
foreach (ListItem item in ListBoxMembers.Items)
{
if (item.Selected)
{
selectedFirstNames.Add(item.Value);
}
}
//selectedFirstNames has your list of selected first names
您是否正在检查回发,并且在回发时不重新绑定? 我敢打赌,你正在吹走你选择的值,因为你正在重新绑定。 foreach 循环中的代码是正确的。