打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
<%# Eval("ArticleName") %>绑定后台数据的方法

前台:

<%@ PageLanguage="C#"AutoEventWireup="true"CodeBehind="UserManage.aspx.cs"Inherits="SPDMWebApp.UserManage"%>

 

<form id="Form1" method="post" runat="server" style="width: 570px">

<%--<center>--%>

<asp:TextBox runat="server" ID="TextBoxSearch"></asp:TextBox>

<asp:Button runat="server" ID="Search" Text="搜索用户" onclick="Search_Click"></asp:Button>

<asp:Label runat="server" Width="40px"></asp:Label>

<asp:checkbox runat="server" Text="显示系统管理用户"></asp:checkbox>

<div style="height: 20px"></div>

<div>

    <asp:button runat="server" text="创建用户" Width="80px" onclick="Unnamed5_Click" />

    <asp:Label runat="server" Width="40px"></asp:Label>

    <asp:button runat="server" text="删除用户" Width="80px" ID="BatchDelete" onclick="Unnamed7_Click" />

    <asp:Label runat="server" Width="40px"></asp:Label>

    <asp:button runat="server" text="LDAP同步" Width="80px" />

    <asp:Label runat="server" Width="40px"></asp:Label>

    <asp:button runat="server" text="批量导入用" Width="80px" />

</div>

<br />

<asp:panel runat="server" BorderStyle="Groove" Width="560px" >

 

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Font-Size="X-Small"

        CellPadding="4" ForeColor="#333333" GridLines="Vertical" Width="550px"

        AllowPaging="True" onpageindexchanging="GridView1_PageIndexChanging"

        onrowdatabound="GridView1_RowDataBound" onrowdeleting="GridView1_RowDeleting"

        PageSize="5" >

   

<AlternatingRowStyle BackColor="White" />

 

 

<Columns>

<asp:TemplateField>

     <HeaderTemplate>选择

     <%--<asp:Buttonrunat="server" Text="全选"onclick="Edit"></asp:Button>--%>

     </HeaderTemplate>

<ItemTemplate>

<asp:CheckBox ID="chkSelect" runat="server" />

</ItemTemplate>

</asp:TemplateField>

 

<asp:TemplateField HeaderText="用户名">

<ItemTemplate>

<asp:Literal ID="Literal1" runat="server" Text= '<%# Eval("UserName") %>' />

</ItemTemplate>

</asp:TemplateField>

 

   

 

 

<asp:TemplateField HeaderText="用户全名">

        <ItemTemplate>

            <asp:Literal ID="Literal2" runat="server" Text='<%# Eval("UserChineseName") %>' />

       

</ItemTemplate>

   

 

 

</asp:TemplateField>

 

   

 

 

<asp:TemplateField HeaderText="部门">

        <ItemTemplate>

            <asp:Literal ID="Literal3" runat="server" Text='<%# Eval("DepartmentID") %>' />

       

</ItemTemplate>

   

 

 

</asp:TemplateField>

 

   

 

 

<asp:TemplateField HeaderText="电子邮件">

         <ItemTemplate>

            <asp:Literal ID="Literal4" runat="server" Text='<%# Eval("Email") %>' />       

</ItemTemplate>

</asp:TemplateField>

 

<asp:TemplateField HeaderText="编辑">   

        <ItemTemplate>

            <asp:LinkButton ID="edit" runat="server" onclick="Edit" CommandArgument='<%# Eval("UID") %>'>编辑</asp:LinkButton>

        </ItemTemplate>   

    </asp:TemplateField>

 

    <asp:CommandField DeleteText="<div id="de"onclick="JavaScript:return confirm('确定删除吗?')">删除</div> "

        HeaderText="删除" ShowDeleteButton="True" >

    <ItemStyle ForeColor="#0066FF" />

    </asp:CommandField>

 

</Columns>

   

 

<EditRowStyle BackColor="#2461BF" />

<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />

<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />

<RowStyle BackColor="#EFF3FB" HorizontalAlign="Center" />

<SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />

<SortedAscendingCellStyle BackColor="#F5F7FB" />

<SortedAscendingHeaderStyle BackColor="#6D95E1" />

<SortedDescendingCellStyle BackColor="#E9EBEF" />

<SortedDescendingHeaderStyle BackColor="#4870BE" />

</asp:GridView>

<br />

<asp:Button runat="server" Text="全选" ID="Button_SelectAll"

        onclick="Button_SelectAll_Click" ></asp:Button>

    <asp:Label runat="server" Width="10px"></asp:Label>

<asp:Button runat="server" Text="全不选" ID="Button_NoSelectAll"

        onclick="Button_NoSelectAll_Click"></asp:Button>

</asp:panel>

<%--</center>--%>

 

</form>

 

后台:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Data;

using System.Collections;

using BLL;

 

namespace SPDMWebApp

{

    public partial class UserManage : System.Web.UI.Page

    {

        public UserMap map = new UserMap();

       

   

 

        protectedvoid Page_Load(objectsender, EventArgs e)

        {

            if(!IsPostBack)

            {

                bind();

            }

        }

 

        protectedvoid Unnamed5_Click(objectsender, EventArgs e)

        {

            Response.Redirect("UserEdit.aspx?id=-1");

        }

 

        protectedvoid GridView1_PageIndexChanging(object sender, GridViewPageEventArgse)

        {

            try

            {

                RememberOldValues();

                GridView1.PageIndex =e.NewPageIndex;

                bind();

                RePopulateValues();

            }

            catch

            { }

        }

 

        protectedvoid GridView1_RowDeleting(object sender, GridViewDeleteEventArgse)

        {

            try

            {

                stringuserID = GridView1.DataKeys[e.RowIndex].Value.ToString();

                //*****************************LDAP模式下,用户无法在PDM 系统中删除**************************

                //如何判断?????

                boolisSuccessful = map.Delete(userID);

                if(isSuccessful)

                    Alert("删除成功!");

                else

                    Alert("删除失败!");

            }

            catch(Exception ex)

            {

                stringerror = ex.ToString();

                Alert("删除失败!");

            }

            if(0 == TextBoxSearch.Text.Trim().Length)

                bind();

            else

                bindBySearch();

        }

 

 

        protectedvoid GridView1_RowDataBound(object sender, GridViewRowEventArgse)

        {

            inti;

            for(i = 0; i < GridView1.Rows.Count + 1; i++) // 网上代码这里没有加1,发现当移入移出第一行时颜色未变。

            {

                if(e.Row.RowType == DataControlRowType.DataRow)  //判断当前行是否是数据行

                {

                    //当鼠标停留时更改背景色

                    e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#FD2F00'");

                    //当鼠标移开时还原背景色

                    e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");

                }

            }

        }

 

 

        protectedvoid Edit(objectsender, EventArgs e)

        {

            try

            {

                LinkButtonlb = (LinkButton)sender;

                stringid = lb.CommandArgument;

                Response.Redirect("UserEdit.aspx?id=" + id);

            }

            catch {}

        }

 

        protectedvoid Button_SelectAll_Click(object sender, EventArgse)

        {

            try

            {

                foreach(GridViewRow row inGridView1.Rows)

                {

                    CheckBoxmyCheckBox = (CheckBox)row.FindControl("chkSelect");

                    myCheckBox.Checked = true;

                }

            }

            catch{ }

        }

 

        protectedvoid Button_NoSelectAll_Click(object sender, EventArgse)

        {

            try

            {

                foreach(GridViewRow row inGridView1.Rows)

                {

                    CheckBoxmyCheckBox = (CheckBox)row.FindControl("chkSelect");

                    myCheckBox.Checked = false;

                }

            }

            catch{ }

        }

 

        // 删除Checkbox选中的数据

        protectedvoid Unnamed7_Click(objectsender, EventArgs e)

        {

            try

            {

                List<string> idList = newList<string>();

                foreach(GridViewRow row inGridView1.Rows)

                {

                    CheckBoxmyCheckBox = (CheckBox)row.FindControl("chkSelect");

                    if(myCheckBox.Checked)

                    {

                        string id = GridView1.DataKeys[row.RowIndex].Value.ToString();

                        if (!idList.Contains(id))

                            idList.Add(id);

                    }

                }

                if(0 == idList.Count)

                {

                    Alert("请选择要删除的用户");

                    return;

                }

                BatchDelete.Attributes.Add("onclick", "returnconfirm('确认要删除该用户吗?')");

 

                boolisSuccessful = map.Delete(idList);

                if(isSuccessful)

                    Alert("删除成功!");

                else

                    Alert("删除失败!");

            }

            catch(Exception ex)

            {

                stringerror = ex.ToString();

                Alert("删除失败!");

            }

            bind();

        }

 

        //搜索用户

        protectedvoid Search_Click(objectsender, EventArgs e)

        {

            DataSetmyds = new DataSet();

            try

            {

                stringword = TextBoxSearch.Text.Trim();

                if(0 == word.Length)

                {

                    Alert("请输入要搜索的用户!");

                    bind();

                    return;

                }

                myds = map.Search(word);

                if(0 == myds.Tables[0].Rows.Count)

                {

                    //this.Button_SelectAll.Visible= false;

                    //this.Button_NoSelectAll.Visible= false;

                    Alert("没有找到相关用户!");

                    bind();

                    return;

                }

                GridView1.DataSource = myds;

                GridView1.DataKeyNames = new string[] { "UID" };//设定主键默认不显示该列

                GridView1.DataBind();

            }

            catch(Exception ex)

            {

                stringerror = ex.ToString();

                Alert("没有找到相关用户!");

                bind();

            }

        }

 

      

 

        //绑定

        public void bind()

        {

            TextBoxSearch.Text = "";

            DataSetmyds = new DataSet();

            try

            {

                myds = map.GetDataSet();

                if(0 == myds.Tables[0].Rows.Count)

                {

                    this.Button_SelectAll.Visible= false;

                    this.Button_NoSelectAll.Visible= false;

                }

                GridView1.DataSource =myds;               

                GridView1.DataKeyNames = new string[] { "UID" };//设定主键默认不显示该列

                GridView1.DataBind();

            }

            catch(Exception ex)

            {

                stringerror = ex.ToString();

            }

 

        }

 

        //绑定搜索词

        public void bindBySearch()

        {

            DataSetmyds = new DataSet();

            try

            {

                stringword = TextBoxSearch.Text.Trim();

                if(0 == word.Length)

                {

                    bind();

                    return;

                }

                myds = map.Search(word);

                if(0 == myds.Tables[0].Rows.Count)

                {

                    //this.Button_SelectAll.Visible= false;

                    //this.Button_NoSelectAll.Visible= false;

                    bind();

                    return;

                }

                GridView1.DataSource = myds;

                GridView1.DataKeyNames = new string[] { "UID" };//设定主键默认不显示该列

                GridView1.DataBind();

            }

            catch(Exception ex)

            {

                stringerror = ex.ToString();

                bind();

            }

        }

 

        #region  分页时Checkbox的状态处理

        //记录checkbox的状态

        privatevoid RememberOldValues()

        {

            ArrayListcategoryIDList = new ArrayList();

            intindex = -1;

            foreach(GridViewRow row inGridView1.Rows)

            {

                index = (int)GridView1.DataKeys[row.RowIndex].Value;

                boolresult = ((CheckBox)row.FindControl("chkSelect")).Checked;

 

                //Check in the Session

                if(Session["CHECKED_ITEMS"] != null)

                    categoryIDList = (ArrayList)Session["CHECKED_ITEMS"];

                if(result)

                {

                    if(!categoryIDList.Contains(index))

                       categoryIDList.Add(index);

                }

                else

                   categoryIDList.Remove(index);

            }

            if(categoryIDList != null &&categoryIDList.Count > 0)

                Session["CHECKED_ITEMS"] = categoryIDList;

        }

 

        //从记录的状态恢复Checkbox的状态

        privatevoid RePopulateValues()

        {

            ArrayListcategoryIDList = (ArrayList)Session["CHECKED_ITEMS"];

            if(categoryIDList != null &&categoryIDList.Count > 0)

            {

                foreach(GridViewRow row inGridView1.Rows)

                {

                    intindex = (int)GridView1.DataKeys[row.RowIndex].Value;

                    if(categoryIDList.Contains(index))

                    {

                        CheckBox myCheckBox = (CheckBox)row.FindControl("chkSelect");

                        myCheckBox.Checked = true;

                    }

                }

            }

        }       

         #endregion

 

 

 

        ///<summary>

        ///弹出对话框

        ///</summary>

        ///<paramname="message">提示语</param>

        public void Alert(stringmessage)

        {

            stringnewMessage = String.Format("<script language=javascript>alert('{0}');</script>", message);

            Response.Write(newMessage);

 

        }

 

    }

}

 



本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
ASP.NET2.0中Gridview中数据操作技巧
GridView导出Excel的超好例子
GridView点击行按钮的时候固定滚动条的实现方法
含有dropdownlist的gridview增删改查
Gridview 显示行序列号
C#(asp.net)实现数据导出Excel表详细代码
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服