0

グリッドビューでボタン (btn_goToPoint) をクリックしても傍受されません。負荷はありますが、リダイレクトは機能しません。バック コード (grd_points_rowCommand) にブレークポイントを配置すると、そこでコードが実行されません。ボタンをクリックする前に、「EnableEventValidation =" false "」で解決したエラーが発生しました。アプリケーションの他のページでまったく同じものを使用し、機能するため、問題は見つかりません。

<asp:GridView ID="grd_points" runat="server" CssClass="mydatagrid" PagerStyle-CssClass="pager"
            HeaderStyle-CssClass="header" RowStyle-CssClass="rows"
          AutoGenerateColumns="False" DataKeyNames="POI_id" 
          DataSourceID="ERP_pointsByQuestion" 
          OnRowDataBound = "grd_points_RowDataBound"
           OnRowCommand="grd_points_RowCommand">
        <Columns>
            <asp:BoundField DataField="POI_id" HeaderText="Num." ReadOnly="True" 
                SortExpression="POI_id" />
            <asp:BoundField DataField="POI_situation" HeaderText="Situation" 
                SortExpression="POI_situation" />
            <asp:BoundField DataField="c_evalPoint" HeaderText="Eval." 
                SortExpression="c_evalPoint" />
            <asp:BoundField DataField="EVA_couleur" HeaderText="Couleur" 
                SortExpression="EVA_couleur" />
            <asp:BoundField DataField="USE_cdsid" HeaderText="Responsable" 
                SortExpression="USE_cdsid" />
            <asp:BoundField DataField="POI_dateRevision" HeaderText="Date Révision" 
                SortExpression="POI_dateRevision" />

            <asp:TemplateField>
                  <ItemTemplate>
                    <asp:Button class="btn btn-primary"  ID="btn_goToPoint" runat="server" 
                      CommandName="goToPoint" 
                CommandArgument="<%# ((GridViewRow) Container).RowIndex %>"
                      Text="►" />
                  </ItemTemplate> 
            </asp:TemplateField>

        </Columns>

そしてバックコード:

protected void grd_points_RowCommand(object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName == "goToPoint")
    {
        int index = Convert.ToInt32(e.CommandArgument);
        GridViewRow row = grd_points.Rows[index];
        string value = row.Cells[0].Text;

        Response.Redirect("gest_point.aspx?point=" + value);
    }
}
4

0 に答える 0