我在webform1.aspx上有一个网格视图(gridView1),其中有一个可以触发弹出窗口的按钮。弹出窗口链接到webform2.aspx,允许用户导入excel文件以获取数据。预计数据将显示在webform1.aspx的网格视图中。但是,如果加载excel文件,我怎样才能对gridView1进行数据绑定?
我有一些想法,不确定逻辑是否正确。
WebForm1.aspx.cs中
//tempDT is a DataTable type to store the data of the grid
Session["data"] = tempDT;
/*Open a popup with webform2.aspx*/
webform2.aspx.cs
//Get data from original data table and add new data get from excel
DataTable tempDT = (DataTable)Session["data"];
/* Add new data from excel to tempDT here */
Session["data"] = tempDT;
但是之后我对Databind网格视图没有任何想法,因为我无法在webform2.aspx中调用网格视图
答案 0 :(得分:2)
我不确定这会帮助你不是
GridView grv = ((GridView)this.Page.PreviousPage.FindControl("gridview1"));
但另一种方式是你的想法,只要确保为webform1做回发,比如重定向到webform1和表单加载
您可以检查会话是否为空,然后与会话数据绑定
答案 1 :(得分:1)
你想要做的是:
1.当你点击按钮时,它会弹出一个窗口(你说的是webform 2)
2.现在用户从Excel文件加载数据
3.您希望在 web form1
好的,现在创建如下所述的过程:
if (Session["ExcelData"]!=null) { //Code here of binding the grid DataTable dt= (DataTable)Session["ExcelData"]; GridView1.DataSource= dt; GridView1.DataBind(); }
会话[ “ExcelData”] = dtExceldata;
<强>更新:强>
这就是全部。 希望这会对你有所帮助
答案 2 :(得分:0)
您必须在'ebform2.aspx中添加一个网格视图并将其放在面板控件中,以帮助您隐藏网格视图。在导入按钮中,使面板可见,以便具有新值的网格视图将出现在同一页面上。