• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    asp.net的GridView控件使用方法大全

    前台.aspx

    复制代码 代码如下:

    asp:Label ID="tplb" runat="server" Text="总页数:">/asp:Label>
    asp:Label ID="lblPageCount" runat="server" Text="">/asp:Label>
    asp:Label ID="curLabel" runat="server" Text="当前页:">/asp:Label>
    asp:Label ID="lblPage" Text="1" runat="server">/asp:Label>nbsp; 
    asp:LinkButton ID="lblFirstButton" runat="server" OnClick="lblFirstButton_Click" >|lt;/asp:LinkButton>nbsp; 
    asp:LinkButton ID="lblPreButton" runat="server" OnClick="lblPreButton_Click" >lt;/asp:LinkButton>nbsp; 
    asp:LinkButton ID="lblNextButton" runat="server" OnClick="lblNextButton_Click" >gt;/asp:LinkButton>nbsp;
    asp:LinkButton ID="lblLastButton" runat="server" OnClick="lblLastButton_Click" >gt;|/asp:LinkButton>nbsp; 
    asp:DropDownList ID="ddlPage" runat="server" Width="40px" AutoPostBack="True" 
          OnSelectedIndexChanged="ddlPage_SelectedIndexChanged"> 
          asp:ListItem>10/asp:ListItem> 
            asp:ListItem>15/asp:ListItem> 
          asp:ListItem>20/asp:ListItem> 
          asp:ListItem>30/asp:ListItem> 
    /asp:DropDownList> 
    asp:Label ID="PageSizeLabel" runat="server" Text="条/页">/asp:Label>  

    后台  
    复制代码 代码如下:

    #region分页
    protected void BindFollowExamInfoGridView(int PersonID)
      {
        int currentpage = Convert.ToInt32(lblPage.Text);
        DataTable dt = new DataTable();
        dt = feibf.GetByPersonIDFollowExamInfo(PersonID);  //查询指定人的随访信息记录
        if (dt.Rows.Count > 0)
        {
          FollowExamInfoGridView.DataSource = dt;
          FollowExamInfoGridView.DataBind();
          PagedDataSource ps = new PagedDataSource();
          ps.DataSource = dt.DefaultView;
          ps.AllowPaging = true;
          ps.PageSize = Convert.ToInt32(ddlPage.SelectedValue);
          lblPageCount.Text = ps.PageCount.ToString();
          this.lblPreButton.Enabled = true;
          this.lblNextButton.Enabled = true;
          ps.CurrentPageIndex = currentpage - 1;
          if (currentpage == 1)
          {
            this.lblPreButton.Enabled = false;
            this.lblFirstButton.Enabled = false;
          }
          else
          {
            this.lblPreButton.Enabled = true;
            this.lblFirstButton.Enabled = true;
          }
          if (currentpage == ps.PageCount)
          {
            this.lblNextButton.Enabled = false;
            this.lblLastButton.Enabled = false;
          }
          else
          {
            this.lblNextButton.Enabled = true;
            this.lblLastButton.Enabled = true;
          }
          FollowExamInfoGridView.DataSource = ps;
          FollowExamInfoGridView.DataBind();
        }
        
      }
      protected void lblPreButton_Click(object sender, EventArgs e)
      {
        this.lblPage.Text = Convert.ToString(Convert.ToUInt32(lblPage.Text) - 1);
        BindFollowExamInfoGridView(Convert.ToInt32(Request.QueryString["PersonID"]));
      }
      protected void lblNextButton_Click(object sender, EventArgs e)
      {
        this.lblPage.Text = Convert.ToString(Convert.ToUInt32(lblPage.Text) + 1);
        BindFollowExamInfoGridView(Convert.ToInt32(Request.QueryString["PersonID"]));
      }
      protected void lblFirstButton_Click(object sender, EventArgs e)
      {
        this.lblPage.Text = "1";
        BindFollowExamInfoGridView(Convert.ToInt32(Request.QueryString["PersonID"]));
      }
      protected void lblLastButton_Click(object sender, EventArgs e)
      {
        this.lblPage.Text = lblPageCount.Text;
        BindFollowExamInfoGridView(Convert.ToInt32(Request.QueryString["PersonID"]));
      }
      protected void ddlPage_SelectedIndexChanged(object sender, EventArgs e)
      {
        lblPage.Text = "1";
        BindFollowExamInfoGridView(Convert.ToInt32(Request.QueryString["PersonID"]));
      }
    #endregion 

    排序
    Allowsort = "true"
    sortExpression = "ID"
    DataView dv = SortBindGrid(dt);
    #region排序
      protected void FollowExamInfoGridView_Sorting(object sender, GridViewSortEventArgs e)
      {
        ViewState["sortexpression"] = e.SortExpression;
        if (ViewState["sortdirection"] == null)
        {
          ViewState["sortdirection"] = "asc";
        }
        else
        {
          if (ViewState["sortdirection"].ToString() == "asc")
          {
            ViewState["sortdirection"] = "desc";
          }
          else
          {
            ViewState["sortdirection"] = "asc";
          }
        }
       
        BindFollowExamInfoGridView(Convert.ToInt32(HiddenPersonID.Value));
      }
      public DataView SortBindGrid(DataTable table)
      {
        if (table != null)
        {
          DataView dv = table.DefaultView;
          if (ViewState["sortexpression"] != null ViewState["sortdirection"] != null)
          {
            dv.Sort = ViewState["sortexpression"].ToString() + " " + ViewState["sortdirection"].ToString();
          }
          return dv;
        }
        else
        {
          return null;
        }
      }
      #endregion 

    =======自带分页
      #region自带分页

    protected void FollowExamInfoGridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
      {
        FollowExamInfoGridView.PageIndex = e.NewPageIndex;
        BindFollowExamInfoGridView(Convert.ToInt32(HiddenPersonID.Value));
      }
    #endregion


      选中Grid View 的实现
    复制代码 代码如下:

      #region实现选中行
       SelectedRowStyle BackColor="AliceBlue" ForeColor="Gray" />
       asp:CommandField ShowSelectButton="True"/>
    if (e.Row.RowType == DataControlRowType.DataRow)
      {
          e.Row.Attributes.Add("onclick", "this.cells[0].childNodes[0].click()");
    }
    protected void GridViewRegiment_SelectedIndexChanged(object sender, EventArgs e)
    {
        GridViewRow row = GridViewRegiment.SelectedRow;
        int RegimentID = Convert.ToInt32(row.Cells[1].Text);
        Response.Redirect("UpdateRegimentation.aspx?RegimentID=" + RegimentID);
    }
    #endregion

    显示颜色和删除
    复制代码 代码如下:

      protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
      {
        //int i;
        //for (i = 0; i GridViewRegiment.Rows.Count; i++)
        //{
          if (e.Row.RowType == DataControlRowType.DataRow)
          {
            //当有编辑列时,避免出错,要加的RowState判断
            if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
            {
              ((ImageButton)e.Row.Cells[2].FindControl("IBtndelete")).Attributes.Add("onclick", "javascript:return confirm('你确认要删除:"" + e.Row.Cells[0].Text + ""吗?')");
            }
            e.Row.Attributes.Add("onmouseover", "this.style.backgroundColor='#00A9FF'");
            e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor='#E6F5FA'");
          }
        //}


    GridView空的处理
      1 显示无表头的空纪录,EmptyDataText="没有记录"
      2 显示表头的空纪录
    复制代码 代码如下:

    DataTable dt = new DataTable();
      dt = feibf.GetByPersonIDFollowExamInfo(PersonID);  //查询指定人的随访信息记录
        DataView dv = SortBindGrid(dt);
        if (dt.Rows.Count > 0)
        {
          FollowExamInfoGridView.DataSource = dv;
          FollowExamInfoGridView.DataBind();
        }
        else
        {
          //添加新行显示表头
          dt.Rows.Add(dt.NewRow());
          FollowExamInfoGridView.DataSource = dt;
          FollowExamInfoGridView.DataBind();
          //处理新行
          int columnCount = FollowExamInfoGridView.Rows[0].Cells.Count;
          //清除掉该空行的全部单元格
          FollowExamInfoGridView.Rows[0].Cells.Clear();
          //新建单元格对象
          FollowExamInfoGridView.Rows[0].Cells.Add(new TableCell());
          //合并单元格
          FollowExamInfoGridView.Rows[0].Cells[0].ColumnSpan = columnCount;
          //设置单元格提示内容
          FollowExamInfoGridView.Rows[0].Cells[0].Style.Value = "text-align:center";
          FollowExamInfoGridView.Rows[0].Cells[0].Text = "此人无随访信息";
        } 

    GridView 的导出
    EnableEventValidation="false"
    复制代码 代码如下:

    #region导出
     public override void VerifyRenderingInServerForm(Control control)
      {
      }
      protected void BtnPrint_Click(object sender, EventArgs e)
      {
        Response.Clear();
        Response.Buffer = true;
        Response.Charset = "GB2312";
        Response.AppendHeader("Content-Disposition", "attachment;filename=FileName.xls");
        // 如果设置为GetEncoding("GB2312");导出的文件将会出现乱码!!!
        Response.ContentEncoding = System.Text.Encoding.UTF7;
        Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。
        System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
        this.AfficheGV.RenderControl(oHtmlTextWriter);
        Response.Output.Write(oStringWriter.ToString());
        Response.Flush();
        Response.End();
      }
    #endregion 

      ToolTip GridView详细信息的显示
      前台
    script type="text/javascript" >
      function Tooltip(cella,cellb)
      {
        document.getElementById("dc").innerText = "详细信息:"+cellb;
        document.getElementById("id").innerText = "ID:"+cella;
        x= event.clientX+document.body.scrollLeft;
        y=event.clientY+document.body.scrollTop+20;
        toolTipLayer.style.display="inline";
        toolTipLayer.style.left=x;
        toolTipLayer.style.top=y;
      }
    /script>
    div id="toolTipLayer" style=" position:absolute; display:none;
      background-color:Aqua; border-color:Blue; border-style:solid;
       border-color:Blue; border-width:1px; " >
      table>
      tr>td>Affiche/td>/tr>
      tr>td id ="dc">/td>/tr>
      tr>td id ="id"> /td>/tr>
      /table>
    /div> 


    后台
    复制代码 代码如下:

    protected void AfficheGV_RowDataBound(object sender, GridViewRowEventArgs e)
      {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
          if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
          {
    1 e.Row.Attributes.Add("onmouseover", "Tooltip('" +e.Row.Cells[0].Text.ToString()+ "','"+e.Row.Cells[1].Text.ToString()+"')");
    2 e.Row.Attributes.Add("onmouseover","javascript:Tooltip('e.Row.Cells[0].Text');");
    3 e.Row.Attributes.Add("onmouseover", "Tooltip('e.Row.Cells[0].Text')");
          } }

    #region自带编辑
      protected void GVAffiche_RowEditing(object sender, GridViewEditEventArgs e)
      {
        GVAffiche.EditIndex = e.NewEditIndex;
        BindGVAffiche();
      }
      protected void GVAffiche_RowDeleting(object sender, GridViewDeleteEventArgs e)
      {
        GVAffiche.EditIndex = -1;
        MyAffiche.DelAfficeBF( Convert.ToInt32(GVAffiche.DataKeys[e.RowIndex].Value.ToString()));
        BindGVAffiche();
      }
      protected void GVAffiche_RowUpdating(object sender, GridViewUpdateEventArgs e)
      {
        int id = Convert.ToInt32(((TextBox)(GVAffiche.Rows[e.RowIndex].Cells[0].Controls[0])).Text.ToString().Trim());
        string dc = ((TextBox)(GVAffiche.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim();
        MyAffiche.UpdateAfficheBf(id,dc);
        GVAffiche.EditIndex = -1;
        BindGVAffiche();
      }
      protected void GVAffiche_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
      {
        GVAffiche.EditIndex = -1;
        BindGVAffiche();
      }
    #endregion 

    #region样式的控制
      protected void GVAffiche_RowDataBound(object sender, GridViewRowEventArgs e)
      {
        //首先判断是否是数据行
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
          //当有编辑列时,避免出错,要加的RowState判断
          if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
          {
            ((Button)e.Row.Cells[7].FindControl("btnDel")).Attributes.Add("onclick","javascript:return confirm('你确认删除:"" + e.Row.Cells[1].Text + ""')");
            //当鼠标停留时更改背景色
            e.Row.Attributes.Add("onmouseover", "color=this.style.backgroundColor;this.style.backgroundColor='#00A9FF'");
            //当鼠标移开时还原背景色
            e.Row.Attributes.Add("onmouseout","this.style.backgroundColor=color");
            GVAffiche.Attributes.Add("style", "word-break:keep-all;word-wrap:normal");
            //GVAffiche.Attributes.Add("style", "word-break:break-all;word-wrap:break-word");
            if (e.Row.Cells[1].Text == "444")
            {
              e.Row.Cells[1].BackColor = System.Drawing.Color.Red;
            }
          }
        }
      }
      #endregion 


    以上是GridView控件的一些基础使用大全,希望对大家有所用处。

    您可能感兴趣的文章:
    • ASP.NET 2.0/3.5中直接操作Gridview控件插入新记录
    • asp.net GridView控件鼠标移动某行改变背景颜色(方法一)
    • asp.net GridView控件中模板列CheckBox全选、反选、取消
    • asp.net GridView控件中实现全选的解决方案
    • ASP.NET2.0中用Gridview控件操作数据的代码
    • ASP.NET GridView控件在列上格式化时间及DataFormatString使用
    • asp.net中GridView控件遍历的小例子
    • Asp.net的GridView控件实现单元格可编辑方便用户使用
    • ASP.NET4 GridView的四种排序样式详解
    • ASP.NET使用GridView导出Excel实现方法
    • asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页
    • ASP.NET中为GridView添加删除提示框的方法
    • asp.net中GridView数据鼠标移入显示提示信息
    • 如何用jQuery实现ASP.NET GridView折叠伸展效果
    • ASP.NET GridView中加入RadioButton不能单选的解决方案
    • 灵活掌握asp.net中gridview控件的多种使用方法(上)
    • 灵活掌握asp.net中gridview控件的多种使用方法(下)
    上一篇:asp.net 编辑gridview的小例子
    下一篇:Asp.net GridView使用大全(分页实现)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    asp.net的GridView控件使用方法大全 asp.net,的,GridView,控件,使用方法,