zoukankan      html  css  js  c++  java
  • ASP.NET ListView控件基本操作

    1、前台代码

    View Code
      1 <asp:ListView ID="lvDepartment" runat="server" DataKeyNames="F_DepartmentID" EnableModelValidation="True" 
    2 InsertItemPosition="LastItem" oniteminserting="lvDepartment_ItemInserting"
    3 onitemediting="lvDepartment_ItemEditing"
    4 onitemcanceling="lvDepartment_ItemCanceling"
    5 onitemdeleting="lvDepartment_ItemDeleting"
    6 onitemupdating="lvDepartment_ItemUpdating">
    7 <AlternatingItemTemplate>
    8 <tr style="">
    9 <td>
    10 <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" onclientclick="return confirm('确认删除?')"/>
    11 <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />
    12 </td>
    13 <td>
    14 <asp:Label ID="F_DepartmentNameLabel" runat="server"
    15 Text='<%# Eval("F_DepartmentName") %>' />
    16 </td>
    17 <td>
    18 <asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />
    19 </td>
    20 </tr>
    21 </AlternatingItemTemplate>
    22 <EditItemTemplate>
    23 <tr style="">
    24 <td>
    25 <asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="更新" />
    26 <asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="取消" />
    27 </td>
    28 <td>
    29 <asp:TextBox ID="F_DepartmentNameTextBox" runat="server" Text='<%# Bind("F_DepartmentName") %>' CssClass="wenben" />
    30 </td>
    31 <td>
    32 <asp:TextBox ID="F_OrderTextBox" runat="server" Text='<%# Bind("F_Order") %>' CssClass="order"
    33 onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;" />
    34 </td>
    35 </tr>
    36 </EditItemTemplate>
    37 <EmptyDataTemplate>
    38 <table runat="server" style="">
    39 <tr>
    40 <td>未返回数据。</td>
    41 </tr>
    42 </table>
    43 </EmptyDataTemplate>
    44 <InsertItemTemplate>
    45 <tr style="">
    46 <td>
    47 <asp:Button ID="InsertButton" runat="server" CommandName="Insert" Text="插入" />
    48 <asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="清除" />
    49 </td>
    50 <td>
    51 <asp:TextBox ID="F_DepartmentNameTextBox" runat="server" Text='<%# Bind("F_DepartmentName") %>' CssClass="wenben" />
    52 </td>
    53 <td>
    54 <asp:TextBox ID="F_OrderTextBox" runat="server" Text='<%# Bind("F_Order") %>' CssClass="order"
    55 onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;" />
    56 </td>
    57 </tr>
    58 </InsertItemTemplate>
    59 <ItemTemplate>
    60 <tr style="">
    61 <td>
    62 <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" onclientclick="return confirm('确认删除?')" />
    63 <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />
    64 </td>
    65 <td>
    66 <asp:Label ID="F_DepartmentNameLabel" runat="server" Text='<%# Eval("F_DepartmentName") %>' />
    67 </td>
    68 <td>
    69 <asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />
    70 </td>
    71 </tr>
    72 </ItemTemplate>
    73 <LayoutTemplate>
    74 <table runat="server">
    75 <tr runat="server">
    76 <td runat="server">
    77 <table ID="itemPlaceholderContainer" runat="server" border="0" style="">
    78 <tr runat="server" style="">
    79 <td runat="server" align="left"></td>
    80 <td runat="server" align="left"><strong>部门名称</strong></td>
    81 <td runat="server" align="left"><strong>顺序</strong></td>
    82 </tr>
    83 <tr ID="itemPlaceholder" runat="server" align="left">
    84 </tr>
    85 </table>
    86 </td>
    87 </tr>
    88 <tr runat="server">
    89 <td runat="server" style="">
    90 <asp:DataPager ID="DataPager1" runat="server">
    91 <Fields>
    92 <asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True"
    93 ShowNextPageButton="False" ShowPreviousPageButton="False" />
    94 <asp:NumericPagerField />
    95 <asp:NextPreviousPagerField ButtonType="Button" ShowLastPageButton="True"
    96 ShowNextPageButton="False" ShowPreviousPageButton="False" />
    97 </Fields>
    98 </asp:DataPager>
    99 </td>
    100 </tr>
    101 </table>
    102 </LayoutTemplate>
    103 <SelectedItemTemplate>
    104 <tr style="">
    105 <td>
    106 <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" />
    107 <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />
    108 </td>
    109 <td>
    110 <asp:Label ID="F_DepartmentNameLabel" runat="server" Text='<%# Eval("F_DepartmentName") %>' />
    111 </td>
    112 <td>
    113 <asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />
    114 </td>
    115 </tr>
    116 </SelectedItemTemplate>
    117 </asp:ListView>

    2、后台代码

    View Code
     1  public partial class department : Mis.PageBase
    2 {
    3 protected void Page_Load(object sender, EventArgs e)
    4 {
    5 if (!IsPostBack&&configcompany!=null)
    6 {
    7 lvDepartmentBind();
    8 }
    9 }
    10
    11 protected void lvDepartment_ItemInserting(object sender, ListViewInsertEventArgs e)
    12 {
    13 TextBox txDepart = (TextBox)e.Item.FindControl("F_DepartmentNameTextBox");
    14 TextBox txOrder = (TextBox)e.Item.FindControl("F_OrderTextBox");
    15 if (txDepart.Text == "")
    16 {
    17 lbMessage.Text = "部门不能为空";
    18 }
    19 else if (txOrder.Text == "")
    20 {
    21 lbMessage.Text = "没有填写顺序";
    22 }
    23 else
    24 {
    25 bool bl = Mis.GetUserInfo.InsertDepartment(txDepart.Text, Convert.ToInt32(txOrder.Text), configcompany.CompanyID);
    26 lvDepartmentBind();
    27 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);
    28 }
    29 }
    30
    31 protected void lvDepartment_ItemEditing(object sender, ListViewEditEventArgs e)
    32 {
    33 lvDepartment.EditIndex = e.NewEditIndex;
    34 lvDepartmentBind();
    35 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);
    36 }
    37
    38 protected void lvDepartment_ItemDeleting(object sender, ListViewDeleteEventArgs e)
    39 {
    40 int KeyId = Convert.ToInt32(lvDepartment.DataKeys[e.ItemIndex].Value);
    41 bool bl = Mis.GetUserInfo.DeleteDepartment(KeyId);
    42 lvDepartmentBind();
    43 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);
    44 }
    45
    46 protected void lvDepartment_ItemUpdating(object sender, ListViewUpdateEventArgs e)
    47 {
    48 int KeyId = Convert.ToInt32(lvDepartment.DataKeys[e.ItemIndex].Value);
    49 TextBox txDepart =(TextBox)lvDepartment.Items[e.ItemIndex].FindControl("F_DepartmentNameTextBox");
    50 TextBox txOrder =(TextBox)lvDepartment.Items[e.ItemIndex].FindControl("F_OrderTextBox");
    51 if (txDepart.Text=="")
    52 lbMessage.Text ="部门不能为空";
    53 else if(txOrder.Text=="")
    54 lbMessage.Text="顺序不能为空";
    55 else
    56 {
    57 string depart =Server.HtmlEncode(txDepart.Text);
    58 int order = Convert.ToInt32(txOrder.Text);
    59 bool bl = Mis.GetUserInfo.UpdateDepartment(depart,order,KeyId);
    60 lvDepartment.EditIndex = -1;
    61 lvDepartmentBind();
    62 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);
    63 }
    64 }
    65
    66 protected void lvDepartment_ItemCanceling(object sender, ListViewCancelEventArgs e)
    67 {
    68 //取消编辑
    69 if (e.CancelMode == ListViewCancelMode.CancelingEdit)
    70 {
    71 //e.Cancel = true;
    72 lvDepartment.EditIndex = -1;
    73 lvDepartmentBind();
    74 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);
    75 }
    76 else if (e.CancelMode == ListViewCancelMode.CancelingInsert)
    77 {
    78 lvDepartmentBind();
    79 HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);
    80 return;
    81 }
    82 }
    83 protected void lvDepartmentBind()
    84 {
    85 lvDepartment.DataSource = Mis.GetUserInfo.ReadDepartmentList(configcompany.CompanyID);
    86 lvDepartment.DataBind();
    87
    88 }
    89 }

    注释:Mis.PageBase:封装了页面登陆判断等一些信息;具体数据的处理,像插入数据库库、数据判断等在其他封装类里实现。

    这两段代码只是listview控件的一些基本的操作!

  • 相关阅读:
    commons-lang3工具类学习(三)
    commons-lang3工具类学习(二)
    commons-lang3工具类学习(一)
    Spring之ClassPathResource加载资源文件
    Spring详解(十)加载配置文件
    java IO流总结
    Spring自定义注解配置切面实现日志记录
    使用@Cacheable 踩过的坑
    将BufferedImage转换为InputStream,亲测可用
    计算两个日期之间间隔的天数
  • 原文地址:https://www.cnblogs.com/shangxia/p/2270373.html
Copyright © 2011-2022 走看看