前端控件:
復制代碼代碼如下:
<label>發布欄目:<asp:DropDownList ID="sectionDropDownList" runat="server"></asp:DropDownList></label
數據綁定:
復制代碼代碼如下:
SourceDb DropDwonListData = new SourceDb();
string DropDwonSelect = "SELECT * FROM [Section]";
sectionDropDownList.DataSource = DropDwonListData.DatasetDb(DropDwonSelect).Tables[0].DefaultView;
sectionDropDownList.DataTextField = "name";
sectionDropDownList.DataValueField = "code";
sectionDropDownList.DataBind();
Button事件:
復制代碼代碼如下:
string newsTitle = sectionDropDownList.SelectedValue;
Response.Write(newsTitle);
問題分析:
因為在page_load中每次都綁定了數據源,而去調用Button事件時,實際是每次都刷新了頁面的,于是每次在打印出來前都是初始化的值,于是每次都是輸出的的一個值。
問題解決:
判斷是否是頁面回調。
前端控件:
復制代碼代碼如下:
<label>發布欄目:<asp:DropDownList ID="sectionDropDownList" runat="server"></asp:DropDownList></label
數據綁定:
復制代碼代碼如下:
if(!IsPostBack){
SourceDb DropDwonListData
= new SourceDb();
string DropDwonSelect = "SELECT * FROM [Section]";
sectionDropDownList.DataSource = DropDwonListData.DatasetDb(DropDwonSelect).Tables[0].DefaultView;
sectionDropDownList.DataTextField = "name";
sectionDropDownList.DataValueField = "code";
sectionDropDownList.DataBind();
}
Button事件:
復制代碼代碼如下:
string newsTitle = sectionDropDownList.SelectedValue;
Response.Write(newsTitle);