您的位置:首页 > 编程语言 > ASP

ASP.NET中ListView的插入、删除、编辑、读取

2017-09-29 14:05 316 查看
下面的实例是有关 ListView 服务器控件的一些常用操作!

一、页面代码

[html] view
plain copy

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="department.aspx.cs" Inherits="Web.systemset.department" %>

<!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>

<link href="../style/style.css" rel="stylesheet" type="text/css" />

</head>

<body>

<form id="form1" runat="server">

<asp:Label ID="lbMessage" runat="server" ForeColor="Red"></asp:Label>

<br />

<asp:ListView ID="lvDepartment" runat="server" DataKeyNames="F_DepartmentID" EnableModelValidation="True"

InsertItemPosition="LastItem" oniteminserting="lvDepartment_ItemInserting"

onitemediting="lvDepartment_ItemEditing"

onitemcanceling="lvDepartment_ItemCanceling"

onitemdeleting="lvDepartment_ItemDeleting"

onitemupdating="lvDepartment_ItemUpdating">

<AlternatingItemTemplate>

<tr style="">

<td>

<asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" onclientclick="return confirm('确认删除?')"/>

<asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />

</td>

<td>

<asp:Label ID="F_DepartmentNameLabel" runat="server"

Text='<%# Eval("F_DepartmentName") %>' />

</td>

<td>

<asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />

</td>

</tr>

</AlternatingItemTemplate>

<EditItemTemplate>

<tr style="">

<td>

<asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="更新" />

<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="取消" />

</td>

<td>

<asp:TextBox ID="F_DepartmentNameTextBox" runat="server" Text='<%# Bind("F_DepartmentName") %>' CssClass="wenben" />

</td>

<td>

<asp:TextBox ID="F_OrderTextBox" runat="server" Text='<%# Bind("F_Order") %>' CssClass="order"

onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;" />

</td>

</tr>

</EditItemTemplate>

<EmptyDataTemplate>

<table runat="server" style="">

<tr>

<td>未返回数据。</td>

</tr>

</table>

</EmptyDataTemplate>

<InsertItemTemplate>

<tr style="">

<td>

<asp:Button ID="InsertButton" runat="server" CommandName="Insert" Text="插入" />

<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="清除" />

</td>

<td>

<asp:TextBox ID="F_DepartmentNameTextBox" runat="server" Text='<%# Bind("F_DepartmentName") %>' CssClass="wenben" />

</td>

<td>

<asp:TextBox ID="F_OrderTextBox" runat="server" Text='<%# Bind("F_Order") %>' CssClass="order"

onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;" />

</td>

</tr>

</InsertItemTemplate>

<ItemTemplate>

<tr style="">

<td>

<asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" onclientclick="return confirm('确认删除?')" />

<asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />

</td>

<td>

<asp:Label ID="F_DepartmentNameLabel" runat="server" Text='<%# Eval("F_DepartmentName") %>' />

</td>

<td>

<asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />

</td>

</tr>

</ItemTemplate>

<LayoutTemplate>

<table runat="server">

<tr runat="server">

<td runat="server">

<table ID="itemPlaceholderContainer" runat="server" border="0" style="">

<tr runat="server" style="">

<td runat="server" align="left"></td>

<td runat="server" align="left"><strong>部门名称</strong></td>

<td runat="server" align="left"><strong>顺序</strong></td>

</tr>

<tr ID="itemPlaceholder" runat="server" align="left">

</tr>

</table>

</td>

</tr>

<tr runat="server">

<td runat="server" style="">

<asp:DataPager ID="DataPager1" runat="server">

<Fields>

<asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True"

ShowNextPageButton="False" ShowPreviousPageButton="False" />

<asp:NumericPagerField />

<asp:NextPreviousPagerField ButtonType="Button" ShowLastPageButton="True"

ShowNextPageButton="False" ShowPreviousPageButton="False" />

</Fields>

</asp:DataPager>

</td>

</tr>

</table>

</LayoutTemplate>

<SelectedItemTemplate>

<tr style="">

<td>

<asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" />

<asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />

</td>

<td>

<asp:Label ID="F_DepartmentNameLabel" runat="server" Text='<%# Eval("F_DepartmentName") %>' />

</td>

<td>

<asp:Label ID="F_OrderLabel" runat="server" Text='<%# Eval("F_Order") %>' />

</td>

</tr>

</SelectedItemTemplate>

</asp:ListView>

</form>

</body>

</html>

二、Page_Load页面加载事件

[csharp] view
plain copy

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack&&configcompany!=null)

{

lvDepartmentBind();

}

}

三、lvDepartment_ItemInserting插入事件

[csharp] view
plain copy

protected void lvDepartment_ItemInserting(object sender, ListViewInsertEventArgs e)

{

TextBox txDepart = (TextBox)e.Item.FindControl("F_DepartmentNameTextBox");

TextBox txOrder = (TextBox)e.Item.FindControl("F_OrderTextBox");

if (txDepart.Text == "")

{

lbMessage.Text = "部门不能为空";

}

else if (txOrder.Text == "")

{

lbMessage.Text = "没有填写顺序";

}

else

{

bool bl = Mis.GetUserInfo.InsertDepartment(txDepart.Text, Convert.ToInt32(txOrder.Text), configcompany.CompanyID);

lvDepartmentBind();

HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);

}

}

四、lvDepartment_ItemEditing编辑事件

[csharp] view
plain copy

protected void lvDepartment_ItemEditing(object sender, ListViewEditEventArgs e)

{

lvDepartment.EditIndex = e.NewEditIndex;

lvDepartmentBind();

HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);

}

五、lvDepartment_ItemDeleting删除事件

[csharp] view
plain copy

protected void lvDepartment_ItemDeleting(object sender, ListViewDeleteEventArgs e)

{

int KeyId = Convert.ToInt32(lvDepartment.DataKeys[e.ItemIndex].Value);

bool bl = Mis.GetUserInfo.DeleteDepartment(KeyId);

lvDepartmentBind();

HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);

}

六、lvDepartment_ItemUpdating更新事件

[csharp] view
plain copy

protected void lvDepartment_ItemUpdating(object sender, ListViewUpdateEventArgs e)

{

int KeyId = Convert.ToInt32(lvDepartment.DataKeys[e.ItemIndex].Value);

TextBox txDepart =(TextBox)lvDepartment.Items[e.ItemIndex].FindControl("F_DepartmentNameTextBox");

TextBox txOrder =(TextBox)lvDepartment.Items[e.ItemIndex].FindControl("F_OrderTextBox");

if (txDepart.Text=="")

lbMessage.Text ="部门不能为空";

else if(txOrder.Text=="")

lbMessage.Text="顺序不能为空";

else

{

string depart =Server.HtmlEncode(txDepart.Text);

int order = Convert.ToInt32(txOrder.Text);

bool bl = Mis.GetUserInfo.UpdateDepartment(depart,order,KeyId);

lvDepartment.EditIndex = -1;

lvDepartmentBind();

HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);

}

}

七、lvDepartment_ItemCanceling取消事件

[csharp] view
plain copy

protected void lvDepartment_ItemCanceling(object sender, ListViewCancelEventArgs e)

{

//取消编辑

if (e.CancelMode == ListViewCancelMode.CancelingEdit)

{

//e.Cancel = true;

lvDepartment.EditIndex = -1;

lvDepartmentBind();

HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);

}

else if (e.CancelMode == ListViewCancelMode.CancelingInsert)

{

lvDepartmentBind();

HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.AbsolutePath);

return;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐