首页 > 编程 > .NET > 正文

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

2024-07-10 13:17:57
字体:
来源:转载
供稿:网友
程序是需要不断改进,上午做了,下午再去看时,会觉它不够完美。
比如这个:现在Insus.NET把它改为下面这个样子:

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

 

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

复制代码 代码如下:


<asp:TemplateField>
<ItemStyle BorderWidth="1" BorderColor="#c0c0c0" />
<ItemTemplate>
<asp:CheckBox runat="server" />
</ItemTemplate>
</asp:TemplateField>


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

复制代码 代码如下:


<asp:Table runat="server" CssClass="table" CellPadding="2" CellSpacing="0">
<asp:TableHeaderRow 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">
English Name
</asp:TableHeaderCell>
</asp:TableHeaderRow>
<asp:TableRow>
<asp:TableCell BorderWidth="1" BorderColor="#c0c0c0">
<asp:TextBox runat="Server" CssClass="textbox" />
</asp:TableCell>
<asp:TableCell BorderWidth="1" BorderColor="#c0c0c0">
<asp:TextBox runat="Server" CssClass="textbox" />
</asp:TableCell>
</asp:TableRow>
</asp:Table>
<div>
<asp:Button Text="Insert" runat="Server" />
<asp:Button Text="Update" runat="Server" />
<asp:Button Text="Delete" runat="Server"
CausesValidation="false" />
</div>
<asp:GridView runat="server" DataKeyNames="CutterTypeId" AutoGenerateColumns="false"
CellPadding="2" CellSpacing="0" BorderWidth="0" BorderColor="#c0c0c0"
RowStyle-Height="20" ShowHeader="false">
<Columns>
<asp:TemplateField>
<ItemStyle BorderWidth="1" BorderColor="#c0c0c0" />
<ItemTemplate>
<asp:CheckBox runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemStyle BorderWidth="1" BorderColor="#c0c0c0" />
<ItemTemplate>
<asp:TextBox runat="server" Text='<%# Eval("CName") %>'></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemStyle BorderWidth="1" BorderColor="#c0c0c0" />
<ItemTemplate>
<asp:TextBox 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:
}
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
}
}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表