System.ArgumentOutOfRangeException на моем RowDataBound - PullRequest
0 голосов
/ 05 декабря 2018

Этот код возвращает ошибку «System.ArgumentOutOfRangeException» .Я знаю эту ошибку, но у моего gridView есть 13 столбцов, и я читаю столбцы 2 и 4, поэтому я не понимаю ...

Only e.Row.Cells [0] работает такЯ не могу прочитать другие столбцы.

Я посмотрел на форуме, но не могу найти свою проблему.Часто эта проблема связана с тем, что человек пытается прочитать столбец, который не существует, это не мой случай.

    protected void grd_accident_RowDataBound(object sender, GridViewRowEventArgs e)
    {

        //Check CM
        if (e.Row.Cells[1].Text.Equals("false"))
        {
            e.Row.Cells[1].Text = "<span class='glyphicon glyphicon-remove' aria-hidden='true'></span>";
        }
        else
        {
            e.Row.Cells[1].Text = "<span class='glyphicon glyphicon-ok' aria-hidden='true'></span>";
        }

        ////Check HSE 
        if (e.Row.Cells[3].Text.Equals("2"))
        {
            e.Row.Cells[3].Text = "<span class='glyphicon glyphicon-remove' aria-hidden='true'></span>";
        }
        else
        {
            e.Row.Cells[3].Text = "<span class='glyphicon glyphicon-ok' aria-hidden='true'></span>";
        }
    }

Если это может помочь, мой gridView:

<asp:GridView ID="grd_accident" runat="server" CellPadding="4" AutoGenerateColumns="False"
            AllowPaging="True"
            CssClass="mGrid"
            PagerStyle-CssClass="pgr"
            AlternatingRowStyle-CssClass="alt" DataSourceID="ATP_rechercheRes" OnRowDataBound="grd_accident_RowDataBound" OnRowCommand="grd_accident_RowCommand">

            <AlternatingRowStyle CssClass="alt"></AlternatingRowStyle>

            <Columns>
                <asp:BoundField DataField="columna" HeaderText="Type" SortExpression="columna" />
                <asp:BoundField DataField="columnb" HeaderText="ID" ReadOnly="True" SortExpression="columnb" />
                <asp:BoundField DataField="columnc" ItemStyle-Width="90px" HeaderText="Date" SortExpression="columnc" />
                <asp:BoundField DataField="columnd" HeaderText="Heure" SortExpression="columnd" />
                <asp:BoundField DataField="columne" HeaderText="Nom" SortExpression="columne" />
                <asp:BoundField DataField="columnf" HeaderText="Prénom" SortExpression="columnf" />
                <asp:BoundField DataField="columng" HeaderText="Badge" SortExpression="columng" />
                <asp:BoundField DataField="columnh" HeaderText="Société" SortExpression="columnh" />
                <asp:BoundField DataField="columni" HeaderText="Description" SortExpression="columni" />
                <asp:BoundField DataField="columnj" ItemStyle-HorizontalAlign="Center" HeaderText="Code EPI" SortExpression="columnj" />
                <asp:BoundField DataField="columnk" ItemStyle-HorizontalAlign="Center" HeaderText="Advisor" SortExpression="columnk" />
                <asp:BoundField DataField="columnl" ItemStyle-HorizontalAlign="Center" HeaderText="HSE" SortExpression="columnl" />
                <asp:TemplateField ItemStyle-Width="130px">
                    <ItemTemplate>

                        <asp:ImageButton ID="btn_goToAccidentInfirmiere" ImageUrl="images/infirmerie.png" Width="37px" runat="server"
                            CommandName="goToAccidentInfirmiere"
                            CommandArgument="<%# ((GridViewRow) Container).RowIndex %>"
                            Text="Infirmière ►" />
                        <asp:ImageButton ID="btn_goToAccidentCm" ImageUrl="images/factory.png" Width="37px" runat="server"
                            CommandName="goToAccidentCm"
                            CommandArgument="<%# ((GridViewRow) Container).RowIndex %>"
                            Text="CM ►" />
                        <asp:ImageButton ID="btn_genRapport" ImageUrl="images/rapport.png" Width="37px" runat="server" CommandName="genRap"
                            CommandArgument="<%# ((GridViewRow) Container).RowIndex %>" />
                    </ItemTemplate>

                </asp:TemplateField>
            </Columns>

            <PagerStyle CssClass="pgr"></PagerStyle>

        </asp:GridView>

1 Ответ

0 голосов
/ 05 декабря 2018

Я нашел решение, я удалил AllowPaging = "True" в свойствах GridView.Теперь работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...