Gridview rowcommand не работает
Gridview rowcommand not working after Gridview Bind coding if i add source using gui rowcommand working but when i bind using code rowcommand give me this error Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. and if i put enableEventValidation="true" in page, rowcommand not working how do i make it possible ?
Что я уже пробовал:
GridView в
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm13.aspx.cs" Inherits="WebApplication3.WebForm13" enableEventValidation="false"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4" ForeColor="#333333" GridLines="None" Width="100%" onrowcommand="GridView1_RowCommand"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:TemplateField AccessibleHeaderText="AID" HeaderText="AID"> <EditItemTemplate> <asp:Label ID="Label1" runat="server" Text='<%# Eval("AID") %>'></asp:Label> </EditItemTemplate> <ItemTemplate> <asp:Label ID="Label1" runat="server" Text='<%# Bind("AID") %>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:BoundField HeaderText="FIRST NAME" DataField= "FirstName" /> <asp:BoundField HeaderText="LAST NAME" DataField= "LastName"/> <asp:BoundField HeaderText="EMP. CODE" DataField= "EMPID" /> <asp:BoundField HeaderText="GENDER" DataField= "GENDER" /> <asp:BoundField HeaderText="EMAIL" DataField= "EMAILID" /> <asp:TemplateField HeaderText="VIEW"> <ItemTemplate> <asp:Button ID="Button1" runat="server" Text="VIEW" CommandArgument="<%#((GridViewRow) Container).RowIndex %>" CommandName="viewuser" CausesValidation="True" Height="24px" Width="20px" Font-Size="11px" BackColor="#6699FF" BorderColor="Black" BorderWidth="0.5px" /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="EDIT"> <ItemTemplate> <asp:Button ID="Button2" runat="server" Text="EDIT" CommandArgument="<%#((GridViewRow) Container).RowIndex %>" CommandName="viewuser" CausesValidation="True" Height="24px" Width="20px" Font-Size="11px" BackColor="#6699FF" BorderColor="Black" BorderWidth="0.5px" /> </ItemTemplate> </asp:TemplateField> </Columns> <EditRowStyle BackColor="#2461BF" /> <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" HorizontalAlign="Left" /> <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" /> <RowStyle BackColor="#EFF3FB" /> <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" /> <SortedAscendingCellStyle BackColor="#F5F7FB" /> <SortedAscendingHeaderStyle BackColor="#6D95E1" /> <SortedDescendingCellStyle BackColor="#E9EBEF" /> <SortedDescendingHeaderStyle BackColor="#4870BE" /> </asp:GridView> </div> </form> </body> </html>
-------------------------------------------------------------------
Загрузка страниц
protected void Page_Load(object sender, EventArgs e) { try { string cs = ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString; using (SqlConnection con = new SqlConnection(cs)) { con.Open(); SqlCommand cmd = new SqlCommand (@"SELECT [AID],[FirstName], [LastName], [EMPID], [GENDER], [EMAILID] FROM USERSMST", con); cmd.Connection = con; DataTable dt = new DataTable(); SqlDataAdapter sda = new SqlDataAdapter(cmd); sda.Fill(dt); GridView1.DataSource = dt; GridView1.DataBind(); } } catch (SqlException EX) { Response.Write(EX.Message); } }
-----------------------------------------
Rowcommand
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) if (e.CommandName == "viewuser") { Response.Redirect("userlist.aspx"); }
akshay_zz
Можете ли вы поместить свой код функции GridView1_RowCommand. Еще одна вещь, которую вы можете поместить отладчик в GridView1_RowCommand в функции и можете проверить, что отладчик получает удар или нет.
Member 14041670
я обновил свой вопрос и код.
akshay_zz
Можете ли вы также показать свою функцию загрузки страниц?
Member 14041670
Я уже поставил загрузку страницы.
это мое имя спейс.
использование системы;
использование системы.Коллекции.Общий;
использование System.Linq;
использование системы.Сеть;
использование System.Web.UI;
используя системы.Веб.Пользовательского интерфейса.WebControls;
использование системы.Конфигурация;
использование System.Data;
используя системы.Данных.Поставщики sqlclient;
пространство имен WebApplication3
{
общественный разделяемого класса WebForm13 : система.Веб.Пользовательского интерфейса.Страницы
{
охраняемых недействительными в(объект отправителя, EventArgs в электронной)
akshay_zz
Что ты делаешь приятель. Это только определение загрузки страницы, показать часть тела
Member 14041670
его уже обновили в вопросе
Vincent Maverick Durano
Где ты персонализация/заполнения таблицы? Покажите нам вашу загрузку страницы и код события RowCommand.
Member 14041670
я обновил свой вопрос.