處理空數據綁定的下拉列表中我有一個asp.net頁面具有以下表單字段:在ASP.Net
- 下拉1.此下拉通過SQL數據源接收數據。
- Dropdown 2.根據下拉列表1的選擇,使用SQL數據源將查詢下拉到數據庫並填充。
- 位於下拉列表2下方的面板控件,它具有一組控件。
我的問題是有可能當什麼也沒從下拉2的數據源返回的情況,我要顯示在下拉列表2項目「沒有內容」,同時,隱藏放置在面板下面的下拉2.
可有人請讓我知道這種情況該怎麼處理。
欣賞幫助。
感謝, 雅格亞
處理空數據綁定的下拉列表中我有一個asp.net頁面具有以下表單字段:在ASP.Net
我的問題是有可能當什麼也沒從下拉2的數據源返回的情況,我要顯示在下拉列表2項目「沒有內容」,同時,隱藏放置在面板下面的下拉2.
可有人請讓我知道這種情況該怎麼處理。
欣賞幫助。
感謝, 雅格亞
下面的代碼添加到您的dropdownlist1選定的索引更改事件。
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
// Run this code when your sql datasource 2 does not return record, you can also place an IfElse condition
DataTable dt = new DataTable();
dt.Columns.Add("ID");
dt.Columns.Add("Value");
DataRow row = dt.NewRow();
row[0] = "-1";
row[1] = "Data Not Found";
dt.Rows.Add(row);
DropDownList2.DataSource = dt;
DropDownList2.DataTextField = "Value";
DropDownList2.DataValueField = "ID";
DropDownList2.DataBind();
}
更新答案:(試試這個) 你也可以把它放在sqldatasource2選擇事件。
protected void SqlDataSource2_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
if (e.Arguments.TotalRowCount == 0)
{
DataTable dt = new DataTable();
dt.Columns.Add("ID");
dt.Columns.Add("Value");
DataRow row = dt.NewRow();
row[0] = "-1";
row[1] = "Data Not Found";
dt.Rows.Add(row);
DropDownList2.DataSource = dt;
DropDownList2.DataTextField = "Value";
DropDownList2.DataValueField = "ID";
DropDownList2.DataBind();
}
}
上面的代碼將添加項目到您的有下拉列表的文本=「數據未找到」
我已經使用下面的代碼來確定SQLDatasource的行數。我不確定如何按照您的建議調用以下功能。 保護無效Y0079_dsGetDefectID_Selecting(對象發件人,SqlDataSourceStatusEventArgs E) { INT affectedRecords = e.AffectedRows; }如果 – 2012-07-14 16:27:58
(e.Arguments.TotalRowCount == 0){ Y0090_pnlDefect.Visible = FALSE; DataTable dt = new DataTable(); dt.Columns.Add(「ID」); dt.Columns.Add(「Value」); DataRow row = dt.NewRow(); row [0] =「-1」; row [1] =「未找到數據」; dt.Rows.Add(row); Dropdown2.DataSource = dt; Dropdown2.DataTextField =「Value」; Dropdown2.DataValueField =「ID」; Dropdown2.DataBind(); } – 2012-07-14 16:53:03
這仍然不起作用。 – 2012-07-14 16:53:23
您已經嘗試了什麼? – 2012-07-14 14:30:22
我試過下面的代碼: – 2012-07-14 15:00:56
代碼在哪裏?您還沒有發佈任何代碼 – 2012-07-14 15:03:18