开发环境为VS2010
创建了一个ASP.NET WEB应用程序,之后①在Page_Load函数中创建了一个数据集,并将其绑定到ListBox1控件上,代码如下:
if (!Page.IsPostBack)
{
//数据生成
DataSet ds = new DataSet();
ds.Tables.Add("stu");
ds.Tables["stu"].Columns.Add("stuNo", typeof(int));
ds.Tables["stu"].Columns.Add("stuName",typeof(string));
ds.Tables["stu"].Columns.Add("stuScore",typeof(int));
ds.Tables["stu"].Rows.Add(new object[] { 1, "张一", 100 });
ds.Tables["stu"].Rows.Add(new object[] { 2, "王二", 100 });
ds.Tables["stu"].Rows.Add(new object[] { 3, "李三", 100 });
ds.Tables["stu"].Rows.Add(new object[] { 4, "赵四", 100 });
ds.Tables["stu"].Rows.Add(new object[] { 5, "周五", 100 });
//绑定数据到ListBox控件
this.ListBox1.DataSource = ds.Tables["stu"];
this.ListBox1.DataValueField = "stuNo";
this.ListBox1.DataTextField = "stuName";
this.ListBox1.DataBind();
}②在Default.aspx的“设计”视图中选定ListBox1Kongjian ,在属性窗口中双击SelectedIndexChanged,然后在Default.aspx.cs文件中创建ListBox1_SelectedIndexChanged函数,之后再从工具箱中拖入一个Label控件,用来显示用户选择的内容③在ListBox1_SelectedIndexChanged函数中添加如下代码:
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
this.Label1.Text = "你选择的学生是: 学号:" + this.ListBox1.SelectedValue.ToString() +
" 姓名:" + this.ListBox1.SelectedItem.Text.ToString();
}最后点击运行,然后在ListBox文本框中选择这些选项,但是在Label标签中却显示不出相关信息各位大哥前辈帮忙看下哪边出错了,我的信息应该挺清楚了吧。
本人比较穷,就少给点分了。
创建了一个ASP.NET WEB应用程序,之后①在Page_Load函数中创建了一个数据集,并将其绑定到ListBox1控件上,代码如下:
if (!Page.IsPostBack)
{
//数据生成
DataSet ds = new DataSet();
ds.Tables.Add("stu");
ds.Tables["stu"].Columns.Add("stuNo", typeof(int));
ds.Tables["stu"].Columns.Add("stuName",typeof(string));
ds.Tables["stu"].Columns.Add("stuScore",typeof(int));
ds.Tables["stu"].Rows.Add(new object[] { 1, "张一", 100 });
ds.Tables["stu"].Rows.Add(new object[] { 2, "王二", 100 });
ds.Tables["stu"].Rows.Add(new object[] { 3, "李三", 100 });
ds.Tables["stu"].Rows.Add(new object[] { 4, "赵四", 100 });
ds.Tables["stu"].Rows.Add(new object[] { 5, "周五", 100 });
//绑定数据到ListBox控件
this.ListBox1.DataSource = ds.Tables["stu"];
this.ListBox1.DataValueField = "stuNo";
this.ListBox1.DataTextField = "stuName";
this.ListBox1.DataBind();
}②在Default.aspx的“设计”视图中选定ListBox1Kongjian ,在属性窗口中双击SelectedIndexChanged,然后在Default.aspx.cs文件中创建ListBox1_SelectedIndexChanged函数,之后再从工具箱中拖入一个Label控件,用来显示用户选择的内容③在ListBox1_SelectedIndexChanged函数中添加如下代码:
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
this.Label1.Text = "你选择的学生是: 学号:" + this.ListBox1.SelectedValue.ToString() +
" 姓名:" + this.ListBox1.SelectedItem.Text.ToString();
}最后点击运行,然后在ListBox文本框中选择这些选项,但是在Label标签中却显示不出相关信息各位大哥前辈帮忙看下哪边出错了,我的信息应该挺清楚了吧。
本人比较穷,就少给点分了。
{
if (!IsPostBack)
{
DataTable dt = ..
ListBox1.DataSource = dt;
ListBox1.DataValueField = "name";
ListBox1.DataTextField = "name";
ListBox1.DataBind();
}
} protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
string name = ListBox1.SelectedItem.Text;
//常规取item和value
string a = ListBox1.SelectedItem.ToString();
string b = ListBox1.SelectedValue.ToString();
//
string c = ((ListBox)sender).SelectedItem.ToString();
string d = ((ListBox)sender).SelectedValue.ToString();
}
}
或DataRowView dr; dr=(DataRowView)this.ListBox1.SelectedItem
原来是这里面缺了AutoPostBack="true" 这个东东,谢谢前辈了,后台的C#程序没有出错,标签里加了这个属性就可以正常显示了。