服务器之家

服务器之家 > 正文

asp.net中DetailsView的使用方法

时间:2019-09-09 11:01     来源/作者:asp.net教程网

aspx页面: 

复制代码代码如下:


<asp:DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" Height="50px" 
Width="500px" OnModeChanging="DetailsView1_ModeChanging" OnItemDeleting="DetailsView1_ItemDeleting" 
OnItemUpdating="DetailsView1_ItemUpdating" OnItemInserting="DetailsView1_ItemInserting"> 
<Fields> 
<asp:TemplateField HeaderText="ID"> 
<ItemTemplate> 
<%#Eval("Id") %> 
</ItemTemplate> 
<InsertItemTemplate> 
<asp:TextBox ID="txtInsertId" Text="InsertId" runat="server"/> 
</InsertItemTemplate> 
<EditItemTemplate> 
<%#Eval("Id") %> 
</EditItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField HeaderText="Title"> 
<ItemTemplate> 
<%#Eval("Title") %> 
</ItemTemplate> 
<InsertItemTemplate> 
<asp:TextBox ID="txtInsertTitle" Text="InsertTitle" runat="server"/> 
</InsertItemTemplate> 
<EditItemTemplate> 
<asp:TextBox ID="txtEditTitle" Text='<%# Eval("Title") %>' runat="server"/> 
</EditItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField HeaderText="Context"> 
<ItemTemplate> 
<%# Eval("LogContext") %> 
</ItemTemplate> 
<InsertItemTemplate> 
<asp:TextBox ID="txtInsertLogContext" Text="InsertLogContext" runat="server"/> 
</InsertItemTemplate> 
<EditItemTemplate> 
<asp:TextBox ID="txtEditLogContext" Text='<%# Eval("LogContext") %>' runat="server"/> 
</EditItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField HeaderText="操作"> 
<ItemTemplate> 
<asp:Button ID="btnEdit" runat="server" CausesValidation="False" 
CommandName="Edit" Text="编辑" /> 
<asp:Button ID="btnNew" runat="server" CausesValidation="False" 
CommandName="New" Text="新建" /> 
<asp:Button ID="btnDelete" runat="server" CausesValidation="False" 
CommandName="Delete" Text="删除" OnClientClick="return confirm('确定要更新该学生信息吗?');" /> 
</ItemTemplate> 
<InsertItemTemplate> 
<asp:Button ID="btnInsert" runat="server" CausesValidation="True" 
CommandName="Insert" Text="插入" /> 
<asp:Button ID="btnCancel" runat="server" CausesValidation="False" 
CommandName="Cancel" Text="取消" /> 
</InsertItemTemplate> 
<EditItemTemplate> 
<asp:Button ID="btnUpdate" runat="server" CausesValidation="True" 
CommandName="Update" Text="更新" OnClientClick="return confirm('确定要更新该学生信息吗?');" /> 
<asp:Button ID="btnCancel2" runat="server" CausesValidation="False" 
CommandName="Cancel" Text="取消" /> 
</EditItemTemplate> 
</asp:TemplateField> 
</Fields> 
</asp:DetailsView> 



CS文件: 

复制代码代码如下:


using System; 
using System.Data; 
using System.Configuration; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 
using System.Collections.Generic; 
public partial class _Default : System.Web.UI.Page 

protected void Page_Load(object sender, EventArgs e) 

if (!IsPostBack) 

DataToBing(); 


private void DataToBing() 

this.DetailsView1.DataSource = DataGridSource(); 
this.DetailsView1.DataBind(); 

private List<Log> DataGridSource() 

List<Log> logs = new List<Log>(); 
for (int i = 1; i < 11; i++) 

Log log = new Log(); 
log.Id = i; 
log.Title = "标题" + i; 
log.LogContext = "内容" + i; 
logs.Add(log); 

return logs; 

public class Log 

private int id; 
public int Id 

get { return id; } 
set { id = value; } 

private string title; 
public string Title 

get { return title; } 
set { title = value; } 

private string logContext; 
public string LogContext 

get { return logContext; } 
set { logContext = value; } 


protected void DetailsView1_ModeChanging(object sender, DetailsViewModeEventArgs e) 

this.DetailsView1.ChangeMode(e.NewMode); 
DataToBing(); 

protected void DetailsView1_ItemDeleting(object sender, DetailsViewDeleteEventArgs e) 

Response.Write("删除操作"); 

protected void DetailsView1_ItemUpdating(object sender, DetailsViewUpdateEventArgs e) 

TextBox tbTitle = (TextBox)this.DetailsView1.FindControl("txtEditTitle"); 
TextBox tbLogContext = (TextBox)this.DetailsView1.FindControl("txtEditTitle"); 
Response.Write("更新操作 : Title : " + tbTitle.Text + " : LogContext : " + tbLogContext.Text); 

protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e) 

Response.Write("插入操作 : "); 

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-07-24
叠猫猫队长可以退出吗 叠猫猫队长怎么换队伍
叠猫猫队长可以退出吗 叠猫猫队长怎么换队伍 2019-06-05
返回顶部