begin process at 2012 02 14 09:12:56
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

AU SECOURS !!!!

 > 

datagrid et checkbox


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

datagrid et checkbox

jeudi 1 juillet 2004 à 10:21:47 | datagrid et checkbox

dedzep

Membre Club
datagrid et checkbox

je souhaite comprendre de maniere simple (je suis assez nul) comment recuperer les valeurs dans un datagrid en fonction d'un checkbox

j'ai visionne de nombreux exemples d'ailleurs plutot sur des sites US, ils fonctionnent parfaitement mais dès que je les adapte (changement de la chaine de connection + modif pour access)
J'ai meme trouve ici une solution plutot judicieuse de J-on-Line mais...
je me heurte a l'erreur suivante :

L'index était hors limites. Il ne doit pas être négatif et doit être inférieur à la taille de la collection.
Nom du paramètre : index
Ligne 341 : '
Ligne 342 : If CType(Datagrid1.Items(i).FindControl("SelectionBox"), CheckBox).Checked Then
Ligne 343 : sKeys.Add(Datagrid1.DataKeys(Datagrid1.Items(i).ItemIndex).ToString)
Ligne 344 : End If
Ligne 345 : Next


Fichier source : f:\inetpub\wwwroot\admin\vueProd_Compat.aspx.vb Ligne : 343

une piste a vous soumettre
mon datagrid n'affiche pas toute la base mais seulement les enregistrements correspondant à un droplist.
Donc je resume :
1/ l'utilisateur choisi dans un droplist une famille de produit
2/ le datagrid affiche les enregistrement pour cette famille
3/ l'utilisateur peut alors utiliser des checkbox dans ce datagrid pour effectuer une action


voici mon datagrid

<TD class="textecourant" colSpan="5">
<DIV align="center"><asp:datagrid id="Datagrid1" runat="server" CssClass="textecourantgras" AllowSorting="True" ShowFooter="True"
autogeneratecolumns="False" border="1" width="600px" bordercolor="Black" cellpadding="5" OnSortCommand="SortCommandCompat_OnClick"
OnPageIndexChanged="ChangeCompat_page" AllowPaging="True">
<AlternatingItemStyle CssClass="textecourant" BackColor="#E4FC84"></AlternatingItemStyle>
<HeaderStyle Font-Bold="True" HorizontalAlign="Center" ForeColor="Silver" BackColor="Gray"></HeaderStyle>
<Columns>
<asp:TemplateColumn HeaderText="Selection">
<HeaderStyle Width="20%"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<ItemTemplate>
<asp:CheckBox id="SelectionBox" runat="server"></asp:CheckBox>
</ItemTemplate>
<FooterStyle HorizontalAlign="Center"></FooterStyle>
<FooterTemplate>
<asp:Button id="Button2" runat="server" Text="Ajouter" CommandName="AjoutBatch"></asp:Button>
</FooterTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="libTel" SortExpression="libTel" ReadOnly="True" HeaderText="Modele">
<HeaderStyle Width="30%"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="libMarque" HeaderText="Marque">
<HeaderStyle Width="40%"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="id_tel" SortExpression="id_tel" ReadOnly="True" HeaderText="id_tel">
<HeaderStyle Width="10%"></HeaderStyle>
</asp:BoundColumn>
</Columns>
<PagerStyle Mode="NumericPages"></PagerStyle>
</asp:datagrid></DIV>
</TD>

voici mon code behind

Private Sub Datagrid1_ItemCommand(ByVal source As Object, ByVal e As DataGridCommandEventArgs) Handles Datagrid1.ItemCommand
If e.CommandName = "AjoutBatch" Then



'Dim rowCount As Integer = 0
'Dim gridSelections As StringBuilder = New StringBuilder

'Loop through each DataGridItem, and determine which CheckBox controls
'have been selected.
'Dim Datagrid1Item As DataGridItem
'For Each Datagrid1Item In Datagrid1.Items

'Dim myCheckbox As CheckBox = CType(Datagrid1Item.Cells(0).Controls(1), CheckBox)
'If myCheckbox.Checked = True Then
'rowCount += 1
'gridSelections.AppendFormat("The checkbox for {0} was selected<br>", _
'Datagrid1.DataKeys(Datagrid1Item.ItemIndex).ToString())
'End If
'Next
'gridSelections.Append("<hr>")
'gridSelections.AppendFormat("Total number selected is: {0}<br>", rowCount.ToString())
'Message.Text = gridSelections.ToString()

Dim ligne As DataGridItem
Dim sKeys As New ArrayList
Dim i As Integer
Dim l As Integer
l = Datagrid1.Items.Count - 1
Trace.Warn("-------L :-" & l.ToString & "-")
For i = 0 To l
'
If CType(Datagrid1.Items(i).FindControl("SelectionBox"), CheckBox).Checked Then
sKeys.Add(Datagrid1.DataKeys(Datagrid1.Items(i).ItemIndex).ToString)
End If
Next

'If sKeys.Count <> 0 Then AjouteItems(sKeys)
End If

End Sub

j'avoue ne pas bien comprendre la logique de ce qui est ecrit donc je suis incapable de comprendre d'ou vient l'erreur.

Merci pour votre aide
mardi 11 octobre 2005 à 11:38:40 | Re : datagrid et checkbox

blueghost

Bonjour,
As tu trouvé une solution ,j'ai le même problème aujourd'hui.
Merci .
Mat.


Cette discussion est classée dans : ligne, checkbox, datagrid, items, datagrid1


Répondre à ce message

Sujets en rapport avec ce message

Réinitialiser l'affichage de mon DataGrid [ par mAcroCode ] Bonjour,Je suis sous Visual Studio 2003 et je fais de l'ASP (C#).Sujet:J'effectue une requête dans une BD, et j'insère les données dans ma DataGrid.La Sélection d'une ligne d'un datgrid sans postback [ par apalaxus ] Bonjour, J'utilise Delphi 2006 dotnet et par conséquent le framework 1.1. J'ai un datagrid et je voudrais que la sélection d'une ligne se fasse uniqu multiple radiobutton in a datagrid [ par waterw72 ] Bonjour,Comment je peux faire pour mettre plusieurs radiobutton par ligne dans un datagrid et récupérer l'élément sélectionné pour chaque ligne?Merci Conserver la position aprés un click sur une ligne du datagrid [ par Cipoli ] Bonjours a tous Je travaille sur une page en ASP 1.0, elle contient un datagrid de plusieurs lignes.Exemple :  je click sur une la 15ème ligne du data GridView CheckBox [ par j2zetka ] Bonjour tout le monde,j'ai un petit souci avec mon gridView, je crée un gridView avec des données et dans chaque ligne on a une checkBox et une liste DataGrid avec détail [ par komisarek ] BonjourJ'ai cherché longuement sur Internet afin de trouver de l'information sur le sujet mais en vain, je termine les mains vides.Mon problème est qu Datagrid [ par RegVB ] Bonjour à tous,Je tourne en rond sur un problème : j'ai un datagrid dans lequel j'ajoute une colonne type Checkbox afin que l'utilisateur sélectionne récuperer le num de ligne du datagrid [ par toddy_101 ] bonjour tout le mondeje suis en train de developper une application web asp.net vec du c#j'utilise un datagrid vec toutes les commandes necessaires: m Datagrid : UpdateCommand [ par visualresine ] Bonjour,J'effectue une mise a jour de mon datagrid grace aux evenements EDIT/UPDATE/CANCELQUand je clique sur EDIT toute la ligne de mon datagrid est Ajouter une ligne a la fin du datagrid [ par jimmy69 ] Bonjour,Je bosse sous visual studio 2003 avec C#.J'ai un fichier xml que je charge dans un dataset via readxml() et que j'affiche dans un datagrid!J'a


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales