GridView控件删除行的操作提示及自定义数据行的代码实现

本文详细介绍了ASP.NET中GridView控件的应用方法,包括如何设置控件样式、配置分页及排序功能、绑定数据源并实现数据的动态加载与删除操作。通过具体实例展示了如何利用模板字段自定义数据显示格式。

前台代码:

<asp:GridView ID="gvNews" runat="server"     AutoGenerateColumns="false" AllowPaging="true" BorderStyle="Solid" HorizontalAlign="Center" Width="610px" CellPadding="4"     CellSpacing="0" EmptyDataText="暂无此类新闻消息" DataKeyNames="InfoID"    PageSize="15"  OnPageIndexChanging="gvNews_PageIndexChanging"     AllowSorting="True" BorderColor="#8080FF" BorderWidth="1px" ShowFooter="True" Font-Size="10pt" OnRowDeleting="gvNews_RowDeleting">    

<PagerSettings Mode="NumericFirstLast" FirstPageText="第1页" LastPageText="最后页" NextPageText="下一页" PreviousPageText="上一页" />    

 <Columns>     

<asp:HyperLinkField DataTextField="Title" HeaderText="标题"     DataNavigateUrlFields="InfoID"     DataNavigateUrlFormatString="index.aspx?SortID=NewsEdit&amp;InfoID={0}">         

<ItemStyle HorizontalAlign="Left" />     

 </asp:HyperLinkField>     

<asp:TemplateField HeaderText="新闻类别">                    

<ItemTemplate>                     

<%#DataBinder.Eval(Container.DataItem, "SortID").ToString()=="0"?"新闻动态":""%>

<%#DataBinder.Eval(Container.DataItem, "SortID").ToString()=="1"?"行业动态":""%>

<%#DataBinder.Eval(Container.DataItem, "SortID").ToString()=="2"?"暴光专区":""%>  

<%#DataBinder.Eval(Container.DataItem, "SortID").ToString()=="3"?"通知公告":""%>  

<%#DataBinder.Eval(Container.DataItem, "SortID").ToString()=="4"?"政策法规":""%>    

</ItemTemplate>                

</asp:TemplateField>     

<asp:TemplateField HeaderText="状态">                    

<ItemTemplate>                    

<%#DataBinder.Eval(Container.DataItem,"State").ToString()=="1"?"发布":"" %> 

<%#DataBinder.Eval(Container.DataItem,"State").ToString()=="0"?"屏蔽":"" %>

</ItemTemplate>     

</asp:TemplateField>     

<asp:TemplateField HeaderText="发布时间">     

<ItemTemplate>

<%# Convert.ToDateTime(DataBinder.Eval(Container.DataItem, "IssueTime").ToString()).ToShortDateString()%>

</ItemTemplate>     

</asp:TemplateField>     

<asp:TemplateField HeaderText="删除">     

<ItemTemplate>     

<asp:LinkButton ID="likDel" runat="server" CommandName="Delete" Text="删除" OnClientClick="javascript:return confirm('你确定删除此记录吗?');" CausesValidation="False"/>      </ItemTemplate>     

</asp:TemplateField>      

</Columns>    

<AlternatingRowStyle BackColor="WhiteSmoke" BorderColor="#8080FF" BorderStyle="Solid"         BorderWidth="1px" />     <HeaderStyle Font-Size="10pt" />

</asp:GridView>

后台:

 protected void Page_Load(object sender, EventArgs e)    

 {        

    if (!IsPostBack)        

     {            

        DataInitial();        

     }    

 }     

public void DataInitial()//控件的数据绑定,数据库操作为封装的类News实现    

 {        

 News news = new News();        

 DataSet ds = new DataSet();        

 ds = news.Select_All();        

 this.gvNews.DataSource = ds.Tables[0];        

 this.gvNews.DataBind();               

}

 protected void gvNews_PageIndexChanging(object sender, GridViewPageEventArgs e)//分页     {         

  this.gvNews.PageIndex = e.NewPageIndex;        

  DataInitial();    

}

 protected void gvNews_RowDeleting(object sender, GridViewDeleteEventArgs e)//删除行     {        

 int InfoID = int.Parse(this.gvNews.DataKeys[e.RowIndex].Value.ToString());        

 News news = new News();

   try        

  {        

      if (0 != news.Delete(InfoID))            

             {                

               Response.Write("<script language='javascript'>alert('删除成功!');</script>");                 this.DataInitial();            

             }        

   }        

   catch (Exception)        

   {          

      Response.Write("<script language='javascript'>alert('删除不成功!');</script>");        

   }        

   this.DataInitial();    

}

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值