如何使用rowdeleting事件删除行的GridView [英] how to delete row in gridview using rowdeleting event

查看:344
本文介绍了如何使用rowdeleting事件删除行的GridView的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的.cs code:

 保护无效Gridview1_RowDeleting(对象发件人,GridViewDeleteEventArgs E)
{
 Gridview1.DeleteRow(e.RowIndex);
 Gridview1.DataBind();
}

这是标记,

 < ASP:GridView控件ID =Gridview1=服务器ShowFooter =真
                                                的AutoGenerateColumns =假OnRowDeleting =Gridview1_RowDeleting>
                    <柱体和GT;
                    < ASP:BoundField的数据字段=ROWNUMBER的HeaderText =行号/>
                    < ASP:的TemplateField的HeaderText =列名>
                        <&ItemTemplate中GT;
                            < ASP:文本框ID =TextBox1的=服务器>< / ASP:文本框>
                        < / ItemTemplate中>
                    < / ASP:的TemplateField>                 <% - < ASP:的TemplateField的HeaderText =标题2>
                        <&ItemTemplate中GT;
                            < ASP:文本框ID =TextBox2中=服务器>< / ASP:文本框>
                        < / ItemTemplate中>
                    < / ASP:的TemplateField> - %GT;
                    < ASP:的TemplateField的HeaderText =数据类型>
                        <&ItemTemplate中GT;
                              < ASP:DropDownList的ID =ddldatatype=服务器>
                              < ASP:ListItem的>&VARCHAR LT; / ASP:ListItem的>
                              < ASP:ListItem的> INT< / ASP:ListItem的>
                              < ASP:ListItem的>数字< / ASP:ListItem的>
                              < ASP:ListItem的>唯一标识符< / ASP:ListItem的>
                              < ASP:ListItem的>字符< / ASP:ListItem的>
                              < / ASP:DropDownList的>
                        < / ItemTemplate中>
                        < FooterStyle Horizo​​ntalAlign =右/>
                        < FooterTemplate>
                        < ASP:按钮的ID =ButtonAdd=服务器文本=添加新行的OnClick =ButtonAdd_Click/>
                         < ASP:按钮的ID =ButtonDel=服务器文本=删除行的OnClick =ButtonDel_Click/>
                         <输入类型=隐藏=服务器值=0ID =hiddencount/>
                        < / FooterTemplate>
                    < / ASP:的TemplateField>
                    < ASP:的TemplateField>
                        <&ItemTemplate中GT;
                            &LT,ASP:LinkBut​​ton的ID =lnkdelete=服务器的CommandName =删除>删除和LT; / ASP:LinkBut​​ton的>
                        < / ItemTemplate中>
                    < / ASP:的TemplateField>
                    < /专栏>
            < / ASP:GridView的>

PLZ sugegest我。我做了这么多..但仍然没有删除的行...

 保护无效Gridview1_RowDeleting(对象发件人,GridViewDeleteEventArgs E)
         {
             //Gridview1.DeleteRow((int)Gridview1.DataKeys[e.RowIndex].Value);
             //Gridview1.DeleteRow(e.RowIndex);
             //Gridview1.DataBind();
             的foreach(在dt.Rows的DataRow博士)
             {
                 dt.Rows.Remove(DR);
                 dt.Rows [e.RowIndex] .Delete();             }
             Gridview1.DeleteRow(e.RowIndex);
            // DT =(数据表)Gridview1.DataSource;
             Gridview1.DataSource = DT;
             Gridview1.DataBind();
       }


解决方案

 保护无效GridView1_RowDeleting(对象发件人,GridViewDeleteEventArgs E)
{
    GridViewRow行=(GridViewRow)GridView1.Rows [e.RowIndex]
    CMD的SqlCommand =新的SqlCommand(删除用户表(用户名,年龄,出生地));
    GridView1.DataBind();
}

This is my .cs code :

protected void Gridview1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
 Gridview1.DeleteRow(e.RowIndex);
 Gridview1.DataBind();
}

and this is markup,

<asp:gridview ID="Gridview1" runat="server" ShowFooter="true" 
                                                AutoGenerateColumns="false" OnRowDeleting="Gridview1_RowDeleting">
                    <Columns>
                    <asp:BoundField DataField="RowNumber" HeaderText="Row Number" />
                    <asp:TemplateField HeaderText="Column Name">
                        <ItemTemplate>
                            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                        </ItemTemplate>
                    </asp:TemplateField>

                 <%-- <asp:TemplateField HeaderText="Header 2">
                        <ItemTemplate>
                            <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
                        </ItemTemplate>
                    </asp:TemplateField>--%>
                    <asp:TemplateField HeaderText="Data Type">
                        <ItemTemplate>
                              <asp:DropDownList ID="ddldatatype" runat="server">
                              <asp:ListItem>varchar</asp:ListItem>
                              <asp:ListItem>int</asp:ListItem>
                              <asp:ListItem>numeric</asp:ListItem>
                              <asp:ListItem>uniqueidentifier</asp:ListItem>
                              <asp:ListItem>char</asp:ListItem>
                              </asp:DropDownList>
                        </ItemTemplate>
                        <FooterStyle HorizontalAlign="Right" />
                        <FooterTemplate>
                        <asp:Button ID="ButtonAdd" runat="server" Text="Add New Row" OnClick="ButtonAdd_Click"/>
                         <asp:Button ID="ButtonDel" runat="server" Text="Delete Row" OnClick="ButtonDel_Click" />
                         <input type="hidden" runat="server" value="0" id="hiddencount" />
                        </FooterTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField>
                        <ItemTemplate>
                            <asp:LinkButton ID="lnkdelete" runat="server" CommandName="Delete" >Delete</asp:LinkButton>
                        </ItemTemplate>
                    </asp:TemplateField>
                    </Columns>
            </asp:gridview>

Plz sugegest me. I have done this much.. but still not deleting row...

 protected void Gridview1_RowDeleting(object sender, GridViewDeleteEventArgs e)
         {


             //Gridview1.DeleteRow((int)Gridview1.DataKeys[e.RowIndex].Value);
             //Gridview1.DeleteRow(e.RowIndex);
             //Gridview1.DataBind();
             foreach(DataRow dr in dt.Rows)
             {
                 dt.Rows.Remove(dr);
                 dt.Rows[e.RowIndex].Delete();

             }
             Gridview1.DeleteRow(e.RowIndex);
            // dt = (DataTable)Gridview1.DataSource;
             Gridview1.DataSource = dt;
             Gridview1.DataBind();
       }

解决方案

protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
    GridViewRow row = (GridViewRow)GridView1.Rows[e.RowIndex];
    SqlCommand cmd = new SqlCommand("Delete From userTable (userName,age,birthPLace)");
    GridView1.DataBind();
}

这篇关于如何使用rowdeleting事件删除行的GridView的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆