![](/img/trans.png)
[英]Retrieve the string value of a WPF ComboBox’s selected item in the code behind
[英]How can i get he value of selected checbkoxlist item at code behind file s that is filled by a string array?
如何获取由字符串数组填充的所选checbkoxlist项目的值? 我使用该代码,但只有在我手动填充了checkboxlist的情况下才起作用,但是如果我从数据库填充了它,然后将其转换为数组并设置为checkbox list,则它不起作用。
Aspx form:
<div>
<asp:CheckBoxList ID="chkUsers" runat="server" >
</asp:CheckBoxList>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click1"
Text="Button" />
</div>
Cd file:
string s=string.Empty;
List<String> YrStrList = new List<string>();
// Loop through each item.
foreach (ListItem item in this.chkUsers.Items)
{
if (item.Selected)
{
// If the item is selected, add the value to the list.
YrStrList.Add(item.Value);
}
}
// s = j.ToString();
String YrStr = String.Join(";", YrStrList.ToArray());
Response.Write(String.Concat("Selected Items: ", YrStr));
虽然很难确定出您的确切情况,但请看以下示例,看看是否有帮助。
标记:
<asp:CheckBoxList ID="chkUsers" runat="server" ></asp:CheckBoxList>
<asp:Button ID="SumitButton" runat="server" Text="Submit" OnClick="SumitButton_Click" />
背后的代码:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) {
BindData();
}
}
private void BindData()
{
string[] myArray = {"a","b","c"};
foreach (string item in myArray)
{
chkUsers.Items.Add(item);
}
chkUsers.Items[1].Selected = true;
}
protected void SumitButton_Click(object sender, EventArgs e)
{
var x = chkUsers.SelectedItem;
Response.Write(x);
}
我认为您只需要询问复选框列表所选项目是什么?
var x = chkUsers.SelectedItem;
但是,如果这样做无济于事,请更新您的方案,我会再看一看。
最后欢迎您。
备用BindData和Submitclick选项(这些可能更适合您的需求)
private void BindData()
{
string[] myArray = {"a","b","c"};
var dt = new DataTable();
dt.Columns.Add("key");
dt.Columns.Add("value");
dt.Rows.Add(1,"a");
dt.Rows.Add(2,"b");
dt.Rows.Add(3,"c");
chkUsers.DataTextField = "value";
chkUsers.DataValueField = "value";
chkUsers.DataSource = dt;
chkUsers.DataBind();
}
protected void SumitButton_Click(object sender, EventArgs e)
{
foreach (ListItem item in chkUsers.Items)
{
if (item.Selected)
Response.Write(item.Value);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.