前台:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="sdsModule" Width="99%" OnRowDataBound="GridView1_RowDataBound"
BorderColor="#93BEE2" BorderStyle="None" BorderWidth="1px" BackColor="White"
CellPadding="3" PageSize="14" AllowPaging="True"
AllowSorting="True" OnPageIndexChanging="GridView1_PageIndexChanging"
OnRowCommand="GridView1_RowCommand"
DataKeyNames="moduleId,parentId">
<SelectedRowStyle ForeColor="#CCFF99" BackColor="#009999" />
<AlternatingRowStyle BackColor="#E8F4FF" />
<RowStyle Wrap="false" />
<HeaderStyle Wrap="false" ForeColor="White" BackColor="#337FB2"></HeaderStyle>
<FooterStyle HorizontalAlign="Right" BackColor="#E8F4FF"></FooterStyle>
<Columns>
<asp:TemplateField HeaderText="序号">
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="5%" />
<ItemTemplate>
<%# Container.DataItemIndex+1 %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="文档名称" SortExpression="moduleName">
<ItemTemplate>
<asp:Label runat="server" ID="labname" Text='<%# Eval("moduleName") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" ID="txtName" Width="100px" Text='<%# Eval("moduleName") %>'></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxrqZyb" runat="server" ErrorMessage="不能为空"
ControlToValidate="txtName" Display="Dynamic"></asp:RequiredFieldValidator>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="简称" SortExpression="jq">
<ItemTemplate>
<asp:Label runat="server" ID="labJq" Text='<%# Eval("jq") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" ID="txtjq" Width="100px" Text='<%# Eval("jq") %>'></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvjq" runat="server" ErrorMessage="不能为空"
ControlToValidate="txtjq" Display="Dynamic"></asp:RequiredFieldValidator>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="父模块">
<ItemTemplate>
<asp:Label ID="labParentId" runat="server" Text='<%#Eval("parentId") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList runat="server" ID="parentList" DataSourceID="sdsModule" DataTextField="moduleName" DataValueField="moduleId" >
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:CheckBoxField DataField="IsView" HeaderText="是否显示" SortExpression="IsView">
<ControlStyle Width="10%" />
</asp:CheckBoxField>
<asp:CheckBoxField DataField="IsGygl" HeaderText="是否属于工艺管理" SortExpression="IsGygl">
<ControlStyle Width="10%" />
</asp:CheckBoxField>
<asp:CheckBoxField DataField="IsCheJian" HeaderText="是否到车间" SortExpression="IsCheJian">
<ControlStyle Width="10%" />
</asp:CheckBoxField>
<asp:TemplateField HeaderText="类型">
<ItemTemplate>
<asp:Label ID="labTqjtZyb" runat="server" Text='<%#Eval("nianType") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList runat="server" ID="typeList" SelectedValue='<%#Eval("nianType") %>' >
<asp:ListItem Text="不分" Value="不分" ></asp:ListItem>
<asp:ListItem Text="年" Value="年" ></asp:ListItem>
<asp:ListItem Text="月" Value="月" ></asp:ListItem>
<asp:ListItem Text="" Value="" ></asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="排序" SortExpression="px">
<ItemTemplate>
<asp:Label runat="server" ID="labPx" Text='<%# Eval("px") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" ID="txtPx" Width="50px" Text='<%# Eval("px") %>'></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvPx" runat="server" ErrorMessage="不能为空"
ControlToValidate="txtPx" Display="Dynamic"></asp:RequiredFieldValidator>
<asp:RangeValidator ID="rvPx" runat="server" ErrorMessage="请输入整数" ControlToValidate="txtPx" Display="Dynamic" MinimumValue="1" MaximumValue="1000" Type="Integer" ></asp:RangeValidator>
</EditItemTemplate>
</asp:TemplateField>
<asp:CommandField HeaderText="修改" ShowEditButton="true" />
<asp:CommandField HeaderText="删除" ShowDeleteButton="true" />
</Columns>
<PagerStyle HorizontalAlign="Right" BackColor="#E8F4FF"></PagerStyle>
</asp:GridView>
<asp:SqlDataSource ID="sdsModule" runat="server" ConnectionString="<%$ ConnectionStrings:uds %>"
DeleteCommand="DELETE FROM [module] WHERE [moduleId] = @moduleId" InsertCommand="INSERT INTO [module] ([moduleName],IsView,IsGygl,IsCheJian,nianType,jq,px,parentId) VALUES ( @moduleName,@IsView,@IsGygl,@IsCheJian,@nianType,@jq,@px,@parentId)"
ProviderName="<%$ ConnectionStrings:uds.ProviderName %>" SelectCommand="select * from module "
UpdateCommand="UPDATE [module] SET moduleName=@moduleName,IsView=@IsView,IsGygl=@IsGygl,IsCheJian=@IsCheJian,nianType=@nianType,jq=@jq,px=@px,parentId=@parentId WHERE [moduleId] = @moduleId">
<DeleteParameters>
<asp:Parameter Name="moduleId" Type="Int32" />
<asp:Parameter Name="moduleName" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="moduleId" Type="Int32" />
<asp:Parameter Name="moduleName" Type="String" />
<asp:Parameter Name="IsView" Type="Boolean" />
<asp:Parameter Name="IsGygl" Type="Boolean" />
<asp:Parameter Name="IsCheJian" Type="Boolean" />
<asp:Parameter Name="nianType" Type="String" />
<asp:Parameter Name="jq" Type="String" />
<asp:Parameter Name="px" Type="Int32" />
<asp:Parameter Name="parentId" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="moduleName" Type="String" />
<asp:Parameter Name="IsView" Type="Boolean" />
<asp:Parameter Name="IsGygl" Type="Boolean" />
<asp:Parameter Name="IsCheJian" Type="Boolean" />
<asp:Parameter Name="nianType" Type="String" />
<asp:Parameter Name="jq" Type="String" />
<asp:Parameter Name="px" Type="Int32" />
<asp:Parameter Name="parentId" Type="Int32" />
</InsertParameters>
</asp:SqlDataSource>
后台代码:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
{
((LinkButton)e.Row.Cells[10].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('确认要删除:\"" + e.Row.Cells[1].Text + "\"吗?')");
}
if ((e.Row.RowState & DataControlRowState.Edit) == DataControlRowState.Edit)
{
DropDownList dtp = (DropDownList)e.Row.FindControl("parentList");
dtp.Items.Insert(0, new ListItem("--请选择--", ""));
string strParentId = this.GridView1.DataKeys[e.Row.RowIndex]["parentId"].ToString();
dtp.SelectedValue = strParentId;
}
}
}
/// <summary>
/// 分页事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
this.GridView1.PageIndex = e.NewPageIndex;
this.GridView1.DataBind();
}
/// <summary>
/// 添加页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAdd_Click(object sender, EventArgs e)
{
//插入
bool bl = true;
this.sdsModule.InsertParameters["moduleName"].DefaultValue = "";
this.sdsModule.InsertParameters["jq"].DefaultValue = "";
sdsModule.InsertParameters["IsView"].DefaultValue = bl.ToString();
sdsModule.InsertParameters["IsGygl"].DefaultValue = bl.ToString();
sdsModule.InsertParameters["IsCheJian"].DefaultValue = bl.ToString();
sdsModule.InsertParameters["nianType"].DefaultValue = "不分";
sdsModule.InsertParameters["px"].DefaultValue = "0";
sdsModule.InsertParameters["parentId"].DefaultValue = "0";
sdsModule.Insert();
//插入日志
UserLogAdd.AddUserLog(Server.UrlDecode(Request.Cookies["UserName"].Value), "插入", "文档模块", "一条名称为空的数据", Request.Cookies["departNumber"].Value);
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
string strCommandName = e.CommandName;
string strdepartNumber = Request.Cookies["departNumber"].Value;
if (strCommandName == "Delete")
{
//插入删除日志
string strCaozuo = this.GridView1.Rows[Convert.ToInt32(e.CommandArgument)].Cells[1].Text;
UserLogAdd.AddUserLog(Server.UrlDecode(Request.Cookies["UserName"].Value), "删除", "文档模块", "名称为 " + strCaozuo + " 的记录", strdepartNumber);
}
if (strCommandName == "Edit")
{
labOldValue.Text = ((Label)this.GridView1.Rows[Convert.ToInt32(e.CommandArgument)].Cells[1].Controls[1]).Text;
}
if (strCommandName == "Update")
{
//插入修改日志
string strCaozuo = ((TextBox)this.GridView1.Rows[Convert.ToInt32(e.CommandArgument)].Cells[1].Controls[1]).Text.Trim();
sdsModule.UpdateParameters["moduleName"].DefaultValue = ((TextBox)this.GridView1.Rows[Convert.ToInt32(e.CommandArgument)].Cells[1].Controls[1]).Text.Trim();
sdsModule.UpdateParameters["jq"].DefaultValue = ((TextBox)this.GridView1.Rows[Convert.ToInt32(e.CommandArgument)].Cells[2].Controls[1]).Text.Trim();
sdsModule.UpdateParameters["nianType"].DefaultValue = ((DropDownList)this.GridView1.Rows[Convert.ToInt32(e.CommandArgument)].Cells[7].Controls[1]).SelectedValue;
sdsModule.UpdateParameters["px"].DefaultValue = ((TextBox)this.GridView1.Rows[Convert.ToInt32(e.CommandArgument)].Cells[8].Controls[1]).Text.Trim();
sdsModule.UpdateParameters["parentId"].DefaultValue = ((DropDownList)this.GridView1.Rows[Convert.ToInt32(e.CommandArgument)].Cells[3].Controls[1]).SelectedValue;
UserLogAdd.AddUserLog(Server.UrlDecode(Request.Cookies["UserName"].Value), "修改", "文档模块", "由 " + labOldValue.Text + " 改为 " + strCaozuo, strdepartNumber);
}
}