none
récupération de la valeur d'une colone de ma gridview impossible RRS feed

  • Question

  • rejour c'est encore moi.

    j'ai une grid view que voici:

    <asp:GridView ID="gridViewDonneesClasse" runat="server" AutoGenerateColumns="False"
                            HeaderStyle-BackColor="#636363" HeaderStyle-ForeColor="White" AllowPaging="True"
                            OnPageIndexChanging="refreshPageIndexChanging" SelectedRowStyle-BackColor="#4999D1"
                            AlternatingRowStyle-BackColor="#EFEFEF" Width="100%" CellPadding="4">
                            <AlternatingRowStyle BackColor="#EFEFEF" />
                            <Columns>
                                <asp:TemplateField>
                                    <HeaderTemplate>
                                        <asp:CheckBox ID="headerLevelCheckBox" runat="server" onclick="checkHeaderClick(this)" />
                                    </HeaderTemplate>
                                    <ItemTemplate>
                                        <asp:CheckBox ID="rowLevelCheckBox" runat="server" onclick="checkRowClick(this)" />
                                    </ItemTemplate>
                                    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                </asp:TemplateField>
                                <asp:BoundField DataField="CODEINSFIN" HeaderText="CODE" 
                                    HeaderStyle-CssClass="gridViewHeader">                            
                                <HeaderStyle CssClass="gridViewHeader" />
                                </asp:BoundField>
                                <asp:BoundField DataField="LIBELLEINSFIN" HeaderText="LIBELLE" 
                                    HeaderStyle-CssClass="gridViewHeader">                            
                                <HeaderStyle CssClass="gridViewHeader" />
                                </asp:BoundField>
                                <asp:BoundField DataField="LIBELLEPROFIL" HeaderText="GESTIONNAIRE">
                                <HeaderStyle Font-Size="XX-Small" />
                                </asp:BoundField>
                                <asp:TemplateField HeaderText="ACTIF?">
                                    <EditItemTemplate>
                                        <asp:CheckBox ID="rowCheckBoxActif" runat="server" 
                                            Checked='<%# Bind("ACTIVEINSFIN") %>' />
                                    </EditItemTemplate>
                                    <ItemTemplate>
                                        <asp:CheckBox ID="rowCheckBoxActif" runat="server" 
                                            Checked='<%# Bind("ACTIVEINSFIN") %>' Enabled="false" />
                                    </ItemTemplate>
                                    <HeaderStyle Font-Size="XX-Small" />
                                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                </asp:TemplateField>
                                <asp:BoundField DataField="REFETS" HeaderText="Ref. Ets." Visible="false" />
                                <asp:BoundField DataField="REFIMPORT" HeaderText="Ref. Import"
                                    Visible="false" />
                                <asp:BoundField DataField="CODEPROFIL" HeaderText="CODE INST" Visible="False" />
                            </Columns>
                            <HeaderStyle BackColor="#636363" ForeColor="White" />
                            <SelectedRowStyle BackColor="#4999D1" />
                        </asp:GridView>

    j'ai rendu invisible la colonne CODEPROFIL. et lorque j'essaie de récupéré sa valeur dans une variable, cette dernière est vide. Mais une fois que je rend la colonne CODEPROFIL visible j'ai ma valeur.

    Je ne veux pas que cette colonne s'affiche, je veux la caché et utiliser la valeur qu'elle contient

    Quelqu'un peut il m'aider???



    koko

    mercredi 21 mai 2014 17:24

Réponses

  • Bonjour, 

    Lorsque l'on met un champs en Visible à False en ASPX, le rendu de ce champs n'est pas fais dans le code HTML. Et donc au postBack, ce champs n’existe tout bonnement pas pour l'application.

    La manière la plus simple de cacher unchamps tout en le gardant dans le code HTML et donc en étant capable de le récupérer lors des postBack est donc de le cacher sur le client en utilisant du code Css : 

    <style type="text/css"> .hidden { display:none; } </style>

    <asp:BoundField DataField="CODEPROFIL" HeaderText="CODE INST"  >
    <ItemStyle CssClass="hidden"/> </asp:BoundField>

    Cordialement, 


    Kevin BEAUGRAND, Modis FRANCE
    Merci de bien vouloir "Marquer comme réponse", les réponses qui ont résolu votre problème.

    mercredi 21 mai 2014 20:00

Toutes les réponses

  • Bonjour, 

    Lorsque l'on met un champs en Visible à False en ASPX, le rendu de ce champs n'est pas fais dans le code HTML. Et donc au postBack, ce champs n’existe tout bonnement pas pour l'application.

    La manière la plus simple de cacher unchamps tout en le gardant dans le code HTML et donc en étant capable de le récupérer lors des postBack est donc de le cacher sur le client en utilisant du code Css : 

    <style type="text/css"> .hidden { display:none; } </style>

    <asp:BoundField DataField="CODEPROFIL" HeaderText="CODE INST"  >
    <ItemStyle CssClass="hidden"/> </asp:BoundField>

    Cordialement, 


    Kevin BEAUGRAND, Modis FRANCE
    Merci de bien vouloir "Marquer comme réponse", les réponses qui ont résolu votre problème.

    mercredi 21 mai 2014 20:00
  • Kevin ça marche bien.

    je me suis inspiré de ta réponse pour faire plein de trucs fous ce matin rien qu'avec du css.

    Merci beaucoup (y)


    koko

    jeudi 22 mai 2014 09:29