| auteur : Didier Danse |
Dans le code behind dans la méthode liée à l'évènement DataBinding:
e. Item . Cells (Colonne). Width = New Unit (tailleEnPx)
|
où Colonne et tailleEnPx sont des entiers.
|
| auteur : Didier Danse |
Il est possible de passer un argument à une fonction liée à l'événement OnClick
d'un bouton.
Pour cela, il suffit d'utiliser la propriété CommandArgument. Cette propriété est
très utile principalement lorsque l'on souhaite mettre un bouton dans un Repeater,
un DataList ou un DataGrid.
< asp : Button runat = server CommandArgument = ' <% # DataBinder. Eval (Container. DataItem , " champ " ) %> ' / >
|
Dans la fonction liée à l'événement:
Public Sub Delete (ByVal sender As Object, ByVal e As System. EventArgs )
Dim bu As Button = CType (sender, Button)
Dim argument As String = bu. CommandArgument
End Sub
|
|
| auteur : David Pedehourcq |
Voici un petit exemple de code :
Dans la page .aspx :
< asp : DataGrid id = " MonDatagrid " runat = " server " AutoGenerateColumns = " False " >
< Columns >
< asp : TemplateColumn HeaderText = " Colonne1 " >
< ItemTemplate >
<% #Container. DataItem (" nomdemacolonne " )%>
< / ItemTemplate >
< EditItemTemplate >
< asp : Textbox runat = " server " width = " 600 " maxlength = " 600 " / >
< / EditItemTemplate >
< / asp : TemplateColumn >
|
dans le code-behind
Private Sub MonDatagrid_PreRender (s As Object, e As EventArgs)
If MonDatagrid. EditItemIndex > - 1 Then
Dim matextbox As TextBox
matextbox= CType (MonDatagrid. Items (MonDatagrid. EditItemIndex ). Cells (0). Controls (0), TextBox)
matextbox. Width = Unit. Parse (" 4cm " )
End If
End Sub
|
|
| auteur : David Pedehourcq | Dans cette exemple on va mettre un fond rouge à toutes les cellules de la 4ème ligne de "Mondatagrid", sachant qu'il comporte 4 colonnes :
Private Sub Mondatagrid_ItemDataBound (ByVal sender As Object, ByVal e As _
System. Web . UI . WebControls . DataGridItemEventArgs ) Handles Mondatagrid. ItemDataBound
If Not e. Item . ItemIndex = - 1 Then
If e. Item . ItemIndex = 4 Then
e. Item . Cells (0). BackColor = System. Drawing . Color . Red
e. Item . Cells (1). BackColor = System. Drawing . Color . Red
e. Item . Cells (2). BackColor = System. Drawing . Color . Red
e. Item . Cells (3). BackColor = System. Drawing . Color . Red
End If
End If
End Sub
|
|
| auteur : David Pedehourcq |
En effet, beaucoup d'entre nous l'on remarqué, lorsque le datagrid a sa propriété AutoGenerateColumns à "true" le code :
Mondatagrid. columns (1). visible = False
|
NE MARCHE PAS
En effet ce code ne marche que si votre datagrid est fait à base de templates columns.
Il existe cependant une astuce :
dans la page aspx :
< asp : DataGrid id = " Mondatagrid " runat = " server " AutoGenerateColumns = " True "
OnItemDataBound = " Mondatagrid_OnItemDataBound " / >
|
dans le code-behind
Private Sub Mondatagrid_ItemDataBound (s As Object, e As DatagridItemEventArgs)
e. Item . Cells (1). Visible = False
End Sub
|
|
Consultez les autres F.A.Q's
Les sources présentés sur cette pages sont libre de droits,
et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
Copyright ©2007
Developpez LLC. Tout droits réservés Developpez LLC.
Aucune reproduction, même partielle, ne peut être faite de ce site et de
l'ensemble de son contenu : textes, documents et images sans l'autorisation
expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
de prison et jusqu'à 300 000 E de dommages et intérets.
Cette page est déposée à la SACD.
|