2009-07-07 7 views
1

J'utilise le code suivant dans rowdatabound fn.Rowdatabound of gridview

Protected Sub gvwMileStone_RowDataBound(ByVal sender As System.Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) 

     If e.Row.RowType = DataControlRowType.Footer Then 
      Dim ddlItem As DropDownList = CType(e.Row.FindControl("ddlFProjectLevels"), DropDownList) 
      If ddlItem IsNot Nothing Then 
       ddlItem.DataSource = objMileStone.GetProjectLevels() 
       ddlItem.DataValueField = "MileStoneID" 
       ddlItem.DataTextField = "Name" 
       ddlItem.DataBind() 
      End If 
     End If 
     If e.Row.RowType = DataControlRowType.DataRow Then 
      If e.Row.RowState = DataControlRowState.Edit Then 
       Dim ddlEProjectLevels As DropDownList = CType(e.Row.FindControl("ddlEProjectLevels"), DropDownList) 
       ddlEProjectLevels.DataSource = objMileStone.GetProjectLevels() 
       ddlEProjectLevels.DataValueField = "MileStoneID" 
       ddlEProjectLevels.DataTextField = "Name" 
       ddlEProjectLevels.DataBind() 
       ddlEProjectLevels.SelectedValue = milestoneid 
      End If 
     End If 


    End Sub 

ddlEProjectLevels est dropdownlist dans edititemtemplate.Whwn i cliquez sur Modifier dans ddlEProjectLevels 1ère rangée se charge avec les données de database.But en 2ème rangée dropdownlist ne contient pas values.Again en 3ème, il se charge de db.Means en alternance lignes, quand je clique sur edit dropdownlist (ddlEProjectLevels) ne charge pas les valeurs.Peut-on aider quelqu'un?

Répondre

5

Ce problème est quelque peu confus par rapport aux autres contrôles et s'applique aux contrôles GridView et DetailsView. Vous devrez vérifier l'énumération RowState à l'aide de la logique au niveau des bits, car un élément peut avoir un état Alternate ou Edit.

Ainsi, au lieu de:

If e.Row.RowState = DataControlRowState.Edit Then 

Essayez:

If (e.Row.RowState And DataControlRowState.Edit) > 0 Then 

Pour plus d'informations consultez la page DataControlRowState Enumeration.

+0

Cela a fonctionné. Merci beaucoup. – user42348

+0

Super! Pas de problème :) –

+0

Génial, cherchait aussi ça et travaillé :) – burntsugar