我當然不會爲此使用表格。你第一次使用會話的猜測可能是正確的。好像你有印象,但是你不能改變會話值,...
您的網頁應工作就像你喜歡:
有第1頁的用戶選擇項目,然後存儲這些會話中的值。 然後在第二頁上,將會話中的值設置爲下拉列表中的默認值。如果他們改變了他們的選擇,只需將會話變量更新爲新值即可。 然後你可以重複無限次。
編輯: 實例,
設置會話變量:
Session["DropDownValue1"] = DropDownList1.SelectedIndex;
設置一個下拉的默認valuie:在第二示例
DropDownList1.SelectedIndex = (int?)Session["DropDownValue1"] ?? 0;
的??
是一個空合併運算符。這意味着如果它之前的對象是空的,那就使用它之後的東西。
您將在同時使用這些例子的代碼隱藏文件*.cs
然後你就可以有一個OnSelectedIndexChanged事件來更新第二頁上的會話變量,一旦用戶改變它,如果你喜歡。
加入這個屬性到你的DropDownList在*.aspx
文件: OnSelectedIndexChanged="Index_Changed"
隨着事件處理程序代碼在您的代碼隱藏*.cs
文件:
void Index_Changed(Object sender, EventArgs e) {
Session["DropDownValue1"] = DropDownList1.SelectedIndex;
}
@ BinaryTox1n - 我是ASP.Net的新手。你可以給我代碼示例(特別是聲明會話值並將它們作爲默認值),並告訴我它們進入哪個文件(aspx,後面的代碼)?非常感謝您的快速響應! – Kate 2011-03-09 18:08:55
@Kate我已經更新了答案以提供一些示例。讓我知道,如果有什麼不清楚。 – BinaryTox1n 2011-03-09 19:48:25
@ BinaryTox1n - 感謝您的例子!幾個簡單的問題:selectedindex和selectedvalue(我正在使用)之間有什麼區別?另外,我是否會將用於在頁面1和頁面2中設置默認值的代碼添加進去,因爲它將在兩個頁面上更新?另外,.cs中的設置默認值代碼會去哪裏?我試圖把它放在page_load中,它給了我一個錯誤。是否有不同的事件放入?再次感謝! – Kate 2011-03-09 19:52:53