使用OnSelectedIndexChanged事件获取listBox的新selectedValue

本文关键字:的新 selectedValue listBox 获取 OnSelectedIndexChanged 事件 使用 | 更新日期: 2023-09-27 18:00:45

我在asp.net web表单中有一个listBox。OnLoad将项目添加到listBox中,并添加一个OnSelectedIndexChanged事件处理程序:

public void OnSelectedIndexChanged(object sender, EventArgs eventArgs)
{
    StreamWriter sw = new StreamWriter(@"C:'Users'me'Desktop'log.txt");
    sw.WriteLine(listBox.SelectedValue);
    sw.Flush();
    sw.Close();
}

流写入程序是这样我可以看到输出。。。

我在列表框上的AutoPostBack设置为true,但每次我选择一个新项目时,它都会重新加载页面,但打印出来的总是列表中的第一个项目,而不是我单击的项目。有人知道我做错了什么吗?

感谢

使用OnSelectedIndexChanged事件获取listBox的新selectedValue

每次加载页面时都会运行OnLoad。检查Page.IsPostBack以确保您仅在加载页面时第一次向列表中添加项目。即
if (!Page.IsPostBack) { FillMyListbox(); }