2010-11-04 5 views
1

У меня есть 3 понижения. 1 в нижнем колонтитуле для новых записей. Один в пустом шаблоне, также для новых записей. Оба они попадают в метод RowDataBound gridview.Как заполнить выпадающий список в EditItemTemplate Grdivew?

Protected Sub gvCaseInfo_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvICaseInfo.RowDataBound 

Dim ddl As New DropDownList 
Dim luMgt As New LookupMgt 

Select Case e.Row.RowType 
    Case DataControlRowType.EmptyDataRow 
     ddl = CType(e.Row.Controls(0).FindControl("ddlEmptyLocationType"), DropDownList) 
    Case DataControlRowType.Footer 
     ddl = CType(e.Row.Controls(0).FindControl("ddlFooterLocationType"), DropDownList) 
End Select 

ddl.DataSource = luMgt.GetLookUpItemList(Of LocationType)() 
ddl.DataBind() 

End Sub

Но я не могу понять, где HWO к popualte ниспадающее меню, которое находится в EditItemTemplate.

ответ

0

Вам нужно проверить состояние строки и посмотреть, находится ли она в режиме редактирования. Если это так, вы можете захватить свой dropdownlist с помощью FindControl() (все еще в функции RowDataBound).

if((e.Row.RowState == DataControlRowState.Edit) || (e.Row.RowState == DataControlRowState.Edit | DataControlRowState.Alternate)) 
{ 
     //Get dropdown 
     //Do stuff 
} 

Это в C#. Сожалею!

Смежные вопросы