2013-01-08 42 views
-1

我的頁面上有一個下拉列表。當我嘗試編輯某行時,下拉列表中的值被設置爲默認值。如何在編輯行時在下拉列表中顯示當前值

我想dropdownlist顯示正在編輯的行的當前值。

+0

你在說可編輯的下拉列表嗎? –

+0

不,我有一個由編輯選項組成的行。當我點擊編輯一個下拉列表出現從哪裏我必須選擇一個值..所以當我點擊編輯它總是顯示默認值,而不是當前值。 – user1808288

回答

0

我猜測下拉列表在模板列中......所以在每次回發中,您必須設置其選定值。 不在if(!isPostback)全部回覆

0
DropDownList1.SelectedIndex = DropDownList1.Items.IndexOf(DropDownList1.Items.FindByText("dd")); 

代替dd.您可以傳遞該行的當前文本。

你可以這樣使用。

ddl.SelectedIndex=ddl.Items.IndexOf(DropDownList1.Items.FindByText("dd")); 

代替dd你可以傳遞你的行文本。希望你想要這樣做。

如果你想顯示的ABC,你可以用下面的代碼

爲文本框或任何控制你正在使用,我假設u必須使用文本框

Textbox t1=(Textbox)Griview1.Rows[e.RowIndex].FindControl("Your control ID") as TextBox 

然後

ddl.SelectedIndex = ddl.Items.IndexOf(DropDownList1.Items.FindByText(t1.ToString())); 
嘗試
+0

protected void GridView1_RowUpdating(object sender,GridViewUpdateEventArgs e) DropDownList ddl =(DropDownList)GridView1.Rows [e.RowIndex] .FindControl(「ddlBU_ID」); e.NewValues [「BU_Id」] = ddl.SelectedValue; }這是我在aspx.cs文件中的代碼。你能告訴我,我應該用你的來代替嗎? – user1808288

+0

你想做什麼?你可以說得更詳細點嗎。因爲我可以看到代碼它是gridview和所有.. –

+0

好的..我有一個帳戶頁面。我向實體datasource1添加了一個命令字段(Edit,Update,Cancel),表名是Account_Master。現在,如果我點擊編輯,我將能夠更新該特定行。因此,該行中的一列是下拉列表,其數據源是entitydatasource 2,該表名來自另一個名爲BU_Master的表。現在的問題是,當我點擊編輯下拉列表顯示的默認值(例如:如果行的當前值是ABC當我點擊編輯它顯示XYZ這是發生在AL行。我不希望這發生 – user1808288

相關問題