服务器之家

服务器之家 > 正文

ASP.NET简化编辑界面解决思路及实现代码(2)

时间:2019-10-21 10:47     来源/作者:asp.net技术网

程序是需要不断改进,上午做了,下午再去看时,会觉它不够完美。 
比如这个:http://www.zzvips.com/article/20636.html 现在Insus.NET把它改为下面这个样子: 
ASP.NET简化编辑界面解决思路及实现代码(2) 

这篇与前一篇改进部分,也许大家会留意到动画演示,主要是GridVeiw的更新与删除会在每row都有。因此Insus.NET把它抽取出来,放在GridView外。致于一次性更新多笔记录,Insus.NET在很早之前已经录制过视频下载地址。还有一个就是删除,在每row第一列放了一个CheckBox,让用户可以选择记录进行删除。 

复制代码代码如下:


<asp:TemplateField> 
<ItemStyle BorderWidth="1" BorderColor="#c0c0c0" Width="1%" /> 
<ItemTemplate> 
<asp:CheckBox ID="CheckBox1" runat="server" onclick="Javascript:changeRowBgColor(this)" /> 
</ItemTemplate> 
</asp:TemplateField> 


删除前提示用户确认之后,再删除,但是在这里遇上一个问题,就是首先判断是否有选择记录,再confirm用户确认删除 
还有一点要注意的地方,就是选择CheckBox之后,行可以Highlight,实现方可以参考:http://www.zzvips.com/article/20096.html
以下较完整代码,仅供参考: 

复制代码代码如下:


<asp:Table ID="Table1" runat="server" CssClass="table" CellPadding="2" CellSpacing="0"> 
<asp:TableHeaderRow Height="20" BackColor="#efebde" BorderWidth="1" BorderColor="#c0c0c0"> 
<asp:TableHeaderCell BackColor="#efebde" BorderWidth="1" BorderColor="#c0c0c0"> 
Chinese Name 
</asp:TableHeaderCell> 
<asp:TableHeaderCell BackColor="#efebde" BorderWidth="1" BorderColor="#c0c0c0" Width="50%"> 
English Name 
</asp:TableHeaderCell> 
</asp:TableHeaderRow> 
<asp:TableRow Height="20"> 
<asp:TableCell BorderWidth="1" BorderColor="#c0c0c0"> 
<asp:TextBox ID="txt_CName" runat="Server" CssClass="textbox" /> 
</asp:TableCell> 
<asp:TableCell BorderWidth="1" BorderColor="#c0c0c0"> 
<asp:TextBox ID="txt_EName" runat="Server" CssClass="textbox" /> 
</asp:TableCell> 
</asp:TableRow> 
</asp:Table> 
<div style="margin-top: 3px; margin-bottom: 3px; padding: 3px;"> 
<asp:Button ID="ButtonInsert" Text="Insert" runat="Server" OnClick="ButtonInsert_Click" /> 
<asp:Button ID="ButtonUpdate" Text="Update" runat="Server" OnClick="ButtonUpdate_Click" /> 
<asp:Button ID="ButtonDelete" Text="Delete" runat="Server" OnClick="ButtonDelete_Click" 
CausesValidation="false" /> 
</div> 
<asp:GridView ID="GvCutterType" runat="server" DataKeyNames="CutterTypeId" AutoGenerateColumns="false" 
CellPadding="2" CellSpacing="0" Width="100%" BorderWidth="0" BorderColor="#c0c0c0" 
RowStyle-Height="20" ShowHeader="false"> 
<Columns> 
<asp:TemplateField> 
<ItemStyle BorderWidth="1" BorderColor="#c0c0c0" Width="1%" /> 
<ItemTemplate> 
<asp:CheckBox ID="CheckBox1" runat="server" onclick="Javascript:changeRowBgColor(this)" /> 
</ItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField> 
<ItemStyle BorderWidth="1" BorderColor="#c0c0c0" /> 
<ItemTemplate> 
<asp:TextBox ID="txtCName" runat="server" Text='<%# Eval("CName") %>'></asp:TextBox> 
</ItemTemplate> 
</asp:TemplateField> 
<asp:TemplateField> 
<ItemStyle BorderWidth="1" BorderColor="#c0c0c0" Width="50%" /> 
<ItemTemplate> 
<asp:TextBox ID="txtEName" runat="server" Text='<%# Eval("EName") %>'></asp:TextBox> 
</ItemTemplate> 
</asp:TemplateField> 
</Columns> 
</asp:GridView> 


xxx.aspx.cs: 

复制代码代码如下:


protected void ButtonInsert_Click(object sender, EventArgs e) 

//do Insert something 
//obj.Insert(......); 

protected void ButtonUpdate_Click(object sender, EventArgs e) 

//reference this url: http://www.cnblogs.com/insus/articles/1400150.html 

protected void ButtonDelete_Click(object sender, EventArgs e) 

// string dataKeyNames = xxx; 
// string[] arr = dataKeyNames.Substring(1).Split(','); 
try 

foreach (string s in arr) 

//obj.Delter(s); 


catch (Exception ex) 

//alert exception message 

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部