如何从列表框中获取数据表

时间:2010-10-22 14:22:33

标签: c# asp.net datatable

我使用数据表填充了一个列表框。

在另一种方法中,我必须从列表框中检索数据表。

Datatable dt = (DataTable)lstExample.DataSource;

引发错误,即Datatable dt is null

我正在研究c#ASP.Net

2 个答案:

答案 0 :(得分:2)

如果您尝试在Postback上执行此操作,则DataTable将不再存在。如果要在回发上访问它,或者只是再次访问数据库,则需要将其保存在ViewState或Session中。

例如:

protected override Page_Load(object sender, EventArgs e)
{
    if( !IsPostBack)
    {
        DataTable tbl = GetData();
        lstData.DataSource = tbl;
        lstData.DataBind();

        // store in viewstate
        ViewState["data"] = tbl;
    }
}

protected void btnSave_Click(object sender, EventArgs e)
{
    DataTable tbl = (DataTable)ViewState["data"];
}

答案 1 :(得分:0)

()

中删除lstExample.DataSource()