как найти элемент управления в шаблоне редактирования элемента?

У меня есть gridview в форме и есть поле шаблона, одно из которых:

      

теперь в событии RowEditing мне нужно получить выбранное значение dropdownlist страны, а затем я установлю это значение как Ddlcountry.selectedvalue = value; так что, когда появляется раскрывающийся список шаблона элемента редактирования, он покажет выбранное значение, а не индекс 0 из раскрывающегося списка. но я не могу получить значение выпадающего списка. Я уже пробовал это:

 int index = e.NewEditIndex; DropDownList DdlCountry = GridView1.Rows[index].FindControl("DdlCountry") as DropDownList; 

нужна помощь пожалуйста. Thanx.

Вам нужно снова привязать GridView чтобы иметь доступ к EditItemTemplate управления в EditItemTemplate . Поэтому попробуйте следующее:

 int index = e.NewEditIndex; DataBindGridView(); // this is a method which assigns the DataSource and calls GridView1.DataBind() DropDownList DdlCountry = GridView1.Rows[index].FindControl("DdlCountry") as DropDownList; 

Но вместо этого я бы использовал RowDataBound для этого, иначе вы дублируете код:

 protected void gridView1_RowDataBound(object sender, GridViewEditEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { if ((e.Row.RowState & DataControlRowState.Edit) > 0) { DropDownList DdlCountry = (DropDownList)e.Row.FindControl("DdlCountry"); // bind DropDown manually DdlCountry.DataSource = GetCountryDataSource(); DdlCountry.DataTextField = "country_name"; DdlCountry.DataValueField = "country_id"; DdlCountry.DataBind(); DataRowView dr = e.Row.DataItem as DataRowView; Ddlcountry.SelectedValue = value; // you can use e.Row.DataItem to get the value } } } 

Вы можете попробовать использовать этот код – на EditIndex property

 var DdlCountry = GridView1.Rows[GridView1.EditIndex].FindControl("DdlCountry") as DropDownList; 

Ссылка: http://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.gridview.editindex.aspx

  • Как установить GridView внутри ScrollView
  • Как отключить прокрутку GridView в Android?
  • как связать выпадающий список в gridview?
  • Условно скрыть CommandField или ButtonField в Gridview
  • Как я могу экспортировать GridView.DataSource в datatable или dataset?
  • Преобразование DBContext в ObjectContext для использования с GridView
  • Сетка изображений внутри ScrollView
  • GridView связан с свойствами вложенного classа
  • Как удалить строку из GridView?
  • Отображение изображений из определенной папки на SD-карте с использованием gridview
  • ASP.NET GridView RowIndex как CommandArgument
  • Давайте будем гением компьютера.