ASP.NET中ListView的插入、删除、编辑、读取
发布日期:2021-10-12 02:13:37 浏览次数:2 分类:技术文章

本文共 7102 字,大约阅读时间需要 23 分钟。

下面的实例是有关 ListView 服务器控件的一些常用操作!

一、页面代码

[html] 
 
  1. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="department.aspx.cs" Inherits="Web.systemset.department" %>  
  2.   
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  4.   
  5. <html xmlns="http://www.w3.org/1999/xhtml">  
  6. <head runat="server">  
  7.     <title></title>  
  8.     <link href="../style/style.css" rel="stylesheet" type="text/css" />  
  9. </head>  
  10. <body>  
  11.     <form id="form1" runat="server">     
  12.     <asp:Label ID="lbMessage" runat="server" ForeColor="Red"></asp:Label>  
  13.     <br />  
  14.     <asp:ListView ID="lvDepartment" runat="server" DataKeyNames="F_DepartmentID" EnableModelValidation="True"   
  15.         InsertItemPosition="LastItem" oniteminserting="lvDepartment_ItemInserting"   
  16.         onitemediting="lvDepartment_ItemEditing"   
  17.         onitemcanceling="lvDepartment_ItemCanceling"   
  18.         onitemdeleting="lvDepartment_ItemDeleting"   
  19.         onitemupdating="lvDepartment_ItemUpdating">  
  20.         <AlternatingItemTemplate>  
  21.             <tr style="">  
  22.                 <td>  
  23.                     <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除"  onclientclick="return confirm('确认删除?')"/>  
  24.                     <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />  
  25.                 </td>  
  26.                 <td>  
  27.                     <asp:Label ID="F_DepartmentNameLabel" runat="server"   
  28.                         Text='<%# Eval("F_DepartmentName") %>' />  
  29.                 </td>  
  30.                 <td>  
  31.                     <asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />  
  32.                 </td>  
  33.             </tr>  
  34.         </AlternatingItemTemplate>  
  35.         <EditItemTemplate>  
  36.             <tr style="">  
  37.                 <td>  
  38.                     <asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="更新" />  
  39.                     <asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="取消" />  
  40.                 </td>  
  41.                 <td>  
  42.                     <asp:TextBox ID="F_DepartmentNameTextBox" runat="server"  Text='<%# Bind("F_DepartmentName") %>' CssClass="wenben" />  
  43.                 </td>  
  44.                 <td>  
  45.                     <asp:TextBox ID="F_OrderTextBox" runat="server" Text='<%# Bind("F_Order") %>' CssClass="order"  
  46.                     onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;" />  
  47.                 </td>  
  48.             </tr>  
  49.         </EditItemTemplate>  
  50.         <EmptyDataTemplate>  
  51.             <table runat="server" style="">  
  52.                 <tr>  
  53.                     <td>未返回数据。</td>  
  54.                 </tr>  
  55.             </table>  
  56.         </EmptyDataTemplate>  
  57.         <InsertItemTemplate>  
  58.             <tr style="">  
  59.                 <td>  
  60.                     <asp:Button ID="InsertButton" runat="server" CommandName="Insert" Text="插入" />  
  61.                     <asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="清除" />  
  62.                 </td>  
  63.                 <td>  
  64.                     <asp:TextBox ID="F_DepartmentNameTextBox" runat="server" Text='<%# Bind("F_DepartmentName") %>' CssClass="wenben"  />  
  65.                 </td>  
  66.                 <td>  
  67.                     <asp:TextBox ID="F_OrderTextBox" runat="server" Text='<%# Bind("F_Order") %>' CssClass="order"  
  68.                     onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;"  />  
  69.                 </td>  
  70.             </tr>  
  71.         </InsertItemTemplate>  
  72.         <ItemTemplate>  
  73.             <tr style="">  
  74.                 <td>  
  75.                     <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除"  onclientclick="return confirm('确认删除?')" />  
  76.                     <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />  
  77.                 </td>  
  78.                 <td>  
  79.                     <asp:Label ID="F_DepartmentNameLabel" runat="server" Text='<%# Eval("F_DepartmentName") %>' />  
  80.                 </td>  
  81.                 <td>  
  82.                     <asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />  
  83.                 </td>  
  84.             </tr>  
  85.         </ItemTemplate>  
  86.         <LayoutTemplate>  
  87.             <table runat="server">  
  88.                 <tr runat="server">  
  89.                     <td runat="server">  
  90.                         <table ID="itemPlaceholderContainer" runat="server" border="0" style="">  
  91.                             <tr runat="server" style="">  
  92.                                 <td runat="server" align="left"></td>  
  93.                                 <td runat="server" align="left"><strong>部门名称</strong></td>  
  94.                                 <td runat="server" align="left"><strong>顺序</strong></td>  
  95.                             </tr>  
  96.                             <tr ID="itemPlaceholder" runat="server" align="left">  
  97.                             </tr>  
  98.                         </table>  
  99.                     </td>  
  100.                 </tr>  
  101.                 <tr runat="server">  
  102.                     <td runat="server" style="">  
  103.                         <asp:DataPager ID="DataPager1" runat="server">  
  104.                             <Fields>  
  105.                                 <asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True"   
  106.                                     ShowNextPageButton="False" ShowPreviousPageButton="False" />  
  107.                                 <asp:NumericPagerField />  
  108.                                 <asp:NextPreviousPagerField ButtonType="Button" ShowLastPageButton="True"   
  109.                                     ShowNextPageButton="False" ShowPreviousPageButton="False" />  
  110.                             </Fields>  
  111.                         </asp:DataPager>  
  112.                     </td>  
  113.                 </tr>  
  114.             </table>  
  115.         </LayoutTemplate>  
  116.         <SelectedItemTemplate>  
  117.             <tr style="">  
  118.                 <td>  
  119.                     <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除"  />  
  120.                     <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />  
  121.                 </td>  
  122.                 <td>  
  123.                     <asp:Label ID="F_DepartmentNameLabel" runat="server"  Text='<%# Eval("F_DepartmentName") %>' />  
  124.                 </td>  
  125.                 <td>  
  126.                     <asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />  
  127.                 </td>  
  128.             </tr>  
  129.         </SelectedItemTemplate>  
  130.     </asp:ListView>  
  131.     </form>  
  132. </body>  
  133. </html>  


 

二、Page_Load页面加载事件

[csharp] 
 
  1. protected void Page_Load(object sender, EventArgs e)  
  2.         {  
  3.             if (!IsPostBack&&configcompany!=null)  
  4.             {  
  5.                 lvDepartmentBind();  
  6.             }  
  7.         }  


 

三、lvDepartment_ItemInserting插入事件

[csharp] 
 
  1. protected void lvDepartment_ItemInserting(object sender, ListViewInsertEventArgs e)  
  2.         {  
  3.             TextBox txDepart = (TextBox)e.Item.FindControl("F_DepartmentNameTextBox");  
  4.             TextBox txOrder = (TextBox)e.Item.FindControl("F_OrderTextBox");  
  5.             if (txDepart.Text == "")  
  6.             {  
  7.                 lbMessage.Text = "部门不能为空";  
  8.             }  
  9.             else if (txOrder.Text == "")  
  10.             {  
  11.                 lbMessage.Text = "没有填写顺序";  
  12.             }  
  13.             else  
  14.             {  
  15.                 bool bl = Mis.GetUserInfo.InsertDepartment(txDepart.Text, Convert.ToInt32(txOrder.Text), configcompany.CompanyID);  
  16.                 lvDepartmentBind();  
  17.                 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);  
  18.             }  
  19.         }  


 

四、lvDepartment_ItemEditing编辑事件

[csharp] 
 
  1. protected void lvDepartment_ItemEditing(object sender, ListViewEditEventArgs e)  
  2.         {  
  3.             lvDepartment.EditIndex = e.NewEditIndex;  
  4.             lvDepartmentBind();  
  5.             HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);  
  6.         }  


 

五、lvDepartment_ItemDeleting删除事件

[csharp] 
 
  1. protected void lvDepartment_ItemDeleting(object sender, ListViewDeleteEventArgs e)  
  2.         {  
  3.             int KeyId = Convert.ToInt32(lvDepartment.DataKeys[e.ItemIndex].Value);  
  4.             bool bl = Mis.GetUserInfo.DeleteDepartment(KeyId);  
  5.             lvDepartmentBind();  
  6.             HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);  
  7.         }  


 

六、lvDepartment_ItemUpdating更新事件

[csharp] 
 
  1. protected void lvDepartment_ItemUpdating(object sender, ListViewUpdateEventArgs e)  
  2.         {  
  3.             int KeyId = Convert.ToInt32(lvDepartment.DataKeys[e.ItemIndex].Value);  
  4.             TextBox txDepart =(TextBox)lvDepartment.Items[e.ItemIndex].FindControl("F_DepartmentNameTextBox");  
  5.             TextBox txOrder =(TextBox)lvDepartment.Items[e.ItemIndex].FindControl("F_OrderTextBox");  
  6.             if (txDepart.Text=="")  
  7.                 lbMessage.Text ="部门不能为空";  
  8.             else if(txOrder.Text=="")  
  9.                 lbMessage.Text="顺序不能为空";  
  10.             else  
  11.             {  
  12.                 string depart =Server.HtmlEncode(txDepart.Text);  
  13.                 int order = Convert.ToInt32(txOrder.Text);  
  14.                 bool bl = Mis.GetUserInfo.UpdateDepartment(depart,order,KeyId);  
  15.                 lvDepartment.EditIndex = -1;  
  16.                 lvDepartmentBind();  
  17.                 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);  
  18.             }  
  19.         }  


 

七、lvDepartment_ItemCanceling取消事件

[csharp] 
 
  1. protected void lvDepartment_ItemCanceling(object sender, ListViewCancelEventArgs e)  
  2.         {  
  3.             //取消编辑  
  4.             if (e.CancelMode == ListViewCancelMode.CancelingEdit)  
  5.             {  
  6.                 //e.Cancel = true;  
  7.                 lvDepartment.EditIndex = -1;  
  8.                 lvDepartmentBind();  
  9.                 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);  
  10.             }  
  11.             else if (e.CancelMode == ListViewCancelMode.CancelingInsert)  
  12.             {  
  13.                 lvDepartmentBind();  
  14.                 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);  
  15.                 return;  
  16.             }  
  17.         }  

转载地址:https://blog.csdn.net/qq_36747842/article/details/78133247 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:ASP.NET中get set用法总结
下一篇:asp.net将文字绘制成图片

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月14日 04时29分46秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章