您的位置:首页 > 其它

GridView全部自定义写法

2010-05-26 18:32 204 查看
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="DirCategoryID"
SkinID="GridView1"
onrowediting="GridView1_RowEditing"
onrowupdating="GridView1_RowUpdating"
onrowcancelingedit="GridView1_RowCancelingEdit"
onrowdeleting="GridView1_RowDeleting"
onrowdatabound="GridView1_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="通讯录分组ID">
<ItemTemplate>
<asp:Label ID="labelDirCategoryID" runat="server" Text='<%#Eval("DirCategoryID")%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:Label ID="labelDirCategoryID" runat="server" Text='<%#Eval("DirCategoryID")%>'></asp:Label>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="通讯录分组名称">
<ItemTemplate>
<asp:Label ID="labelCategoryName" runat="server" Text='<%#Eval("DirCategoryName")%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="textboxCategoryName" runat="server" Text='<%#Eval("DirCategoryName")%>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="通讯录分组类别">
<ItemTemplate>
<%#IsPublicMethod(Convert.ToString(Eval("isPublic"))) %>
</ItemTemplate>
<EditItemTemplate>
<%#IsPublicMethod(Convert.ToString(Eval("isPublic"))) %>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="lbtnEdit" runat="server" CommandName="Edit" CommandArgument='<%#Eval("DirCategoryID") %>' CausesValidation="false"
Text="编辑" ></asp:LinkButton>
 <asp:LinkButton ID="lbtnDelete" runat="server" CausesValidation="False" CommandName="Delete" CommandArgument='<%#Eval("DirCategoryID") %>'
Text="删除" OnClientClick='return confirm("是否要删除组?");'></asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>
<asp:LinkButton ID="ButtonUpdate" runat="server" CommandName="update" Text="更新" CausesValidation="false"/>
<asp:LinkButton ID="ButtonCancle" runat="server" CommandName="Cancel" Text="取消" CausesValidation="false"/>
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>

后台:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Text;
using RGPWEB;

public partial class Web_customerlist_sm_DirectoryCategoryList : System.Web.UI.Page
{

StringBuilder where = new StringBuilder(" 1=1 ");
Sm_DirectoryCategory SmDirectoryCategory = new Sm_DirectoryCategory();
protected void Page_Load(object sender, EventArgs e)
{
this.GridView1.Attributes.Add("bordercolor", "#a8c7ce");
Val_Authority();
if (!IsPostBack)
{
DropDownList.SelectedIndex = 0;
GridView1DateBind();
}
}

#region 添加权限
public void Val_Authority()
{
//是否登录
if (!SessionBox.CheckUserSession())
{
Response.Redirect("~/Login.aspx");
}
else
{
UserHandle.InitModule("DirectoryCategory_list");//初始化模块权限
//浏览权限
if (UserHandle.ValidationHandle(RGP_Tag.Browse))
{
//新增权限
if (UserHandle.ValidationHandle(RGP_Tag.Add))
{
buttonaddpublic.Visible = true;
}
else
{
buttonaddpublic.Visible = false;
}
}
else
{
Response.Redirect("../No_Authority.aspx");
}

}
}
#endregion

protected void GridView1DateBind()
{
DataSet DS = null;
string ispublic = DropDownList.SelectedValue.ToString();
switch (ispublic)
{
case "是":
where.Append(" and isPublic='是' ");
break;
case "否":
where.Append(" and isPublic='否' ");
break;
}
DS = SmDirectoryCategory.GetList(where.ToString());
if (DS.Tables[0] != null)
{
GridView1.DataSource = DS;
}
GridView1.DataBind();
}
protected void buttonadd_Click(object sender, EventArgs e)
{
model_Sm_DirectoryCategory ModelSmDirectoryCategory = new model_Sm_DirectoryCategory();
if (Session["UserID"] != null)
{
ModelSmDirectoryCategory.c_userid = Convert.ToInt32(Session["UserID"]);
}
if (textboxadd.Text != null)
{
ModelSmDirectoryCategory.DirCategoryName = textboxadd.Text;
}
ModelSmDirectoryCategory.ParentID = 0;
ModelSmDirectoryCategory.isPublic = "否";
Sm_DirectoryCategory SmDirectoryCategory = new Sm_DirectoryCategory();
int result = 0;
result = SmDirectoryCategory.Add(ModelSmDirectoryCategory);
if (result == 1)
{
Response.Redirect("DirectoryCategory_list.aspx");
}

}
protected string IsPublicMethod(string ispublic)
{
switch (ispublic)
{
case "是":
return "公共分组";
case "否":
return "私有分组";
default:
return "";
}
}
protected void buttonSearch_Click(object sender, EventArgs e)
{
GridView1DateBind();
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//如果选择的是公共分组,才去控制编辑删除是否显示,私有分组默认都显示
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (((System.Data.DataRowView)(e.Row.DataItem)).Row.ItemArray[4].ToString() == "是" || Convert.ToInt32(((System.Data.DataRowView)(e.Row.DataItem)).Row.ItemArray[0]) == 3)
{
UserHandle.InitModule("DirectoryCategory_list");
//编辑权限
if (UserHandle.ValidationHandle(RGP_Tag.Edit))
{
LinkButton lbtn = (LinkButton)e.Row.FindControl("lbtnEdit");
if (lbtn != null)
lbtn.Visible = true;
}
else
{
LinkButton lbtn = (LinkButton)e.Row.FindControl("lbtnEdit");
if (lbtn != null)
lbtn.Visible = false;

}
//删除权限
if (UserHandle.ValidationHandle(RGP_Tag.Delete))
{
LinkButton lbtn = (LinkButton)e.Row.FindControl("lbtnDelete");
if (lbtn != null)
lbtn.Visible = true;
}
else
{
LinkButton lbtn = (LinkButton)e.Row.FindControl("lbtnDelete");
if (lbtn != null)
lbtn.Visible = false;
}
if (UserHandle.ValidationHandle(RGP_Tag.Add))
{
buttonaddpublic.Visible = true;
}
else
{
buttonaddpublic.Visible = false;
}
}
}
}
protected void buttonaddpublic_Click(object sender, EventArgs e)
{
model_Sm_DirectoryCategory ModelSmDirectoryCategory = new model_Sm_DirectoryCategory();
ModelSmDirectoryCategory.c_userid = 0;
if (textboxadd.Text != null)
{
ModelSmDirectoryCategory.DirCategoryName = textboxadd.Text;
}
ModelSmDirectoryCategory.ParentID = 0;
ModelSmDirectoryCategory.isPublic = "是";
Sm_DirectoryCategory SmDirectoryCategory = new Sm_DirectoryCategory();
int result = 0;
result = SmDirectoryCategory.Add(ModelSmDirectoryCategory);
if (result == 1)
{
Response.Redirect("DirectoryCategory_list.aspx");
}
}

protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
GridView1DateBind();
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
model_Sm_DirectoryCategory modelSmDirectoryCategory = new model_Sm_DirectoryCategory();
if (((Label)(GridView1.Rows[e.RowIndex].FindControl("labelDirCategoryID"))).Text != "")
{
modelSmDirectoryCategory.DirCategoryID = Convert.ToInt32(((Label)(GridView1.Rows[e.RowIndex].FindControl("labelDirCategoryID"))).Text);
}
modelSmDirectoryCategory.DirCategoryName = ((TextBox)(GridView1.Rows[e.RowIndex].FindControl("textboxCategoryName"))).Text;
if (modelSmDirectoryCategory.DirCategoryName != "")
SmDirectoryCategory.Update(modelSmDirectoryCategory);
GridView1.EditIndex = -1;
GridView1DateBind();
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
int DirCategoryID = 0;
if (((Label)(GridView1.Rows[e.RowIndex].FindControl("labelDirCategoryID"))).Text != "")
DirCategoryID = Convert.ToInt32(((Label)(GridView1.Rows[e.RowIndex].FindControl("labelDirCategoryID"))).Text);
SmDirectoryCategory.Delete(DirCategoryID);
GridView1DateBind();
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
GridView1DateBind();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: