发布于 2016-06-09 20:14:49 | 45 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

ASP.NET

ASP.NET 是.NET FrameWork的一部分,是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server Pages(动态服务器页面) ,运行于 IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序 。


GridView控件是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>   
<asp:LinkButton ID="lblFirstButton" runat="server" OnClick="lblFirstButton_Click" >|<</asp:LinkButton>   
<asp:LinkButton ID="lblPreButton" runat="server" OnClick="lblPreButton_Click" ><</asp:LinkButton>   
<asp:LinkButton ID="lblNextButton" runat="server" OnClick="lblNextButton_Click" >></asp:LinkButton>  
<asp:LinkButton ID="lblLastButton" runat="server" OnClick="lblLastButton_Click" >>|</asp:LinkButton>   
<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 = "utf-8"; 
    Response.AppendHeader("Content-Disposition", "attachment;filename=FileName.xls"); 
    // 如果设置为GetEncoding("utf-8");导出的文件将会出现乱码!!! 
    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的GridView控件使用方法大全
Asp.net的GridView控件实现单元格可编辑方便用户使用
灵活掌握asp.net中gridview控件的多种使用方法(下)
灵活掌握asp.net中gridview控件的多种使用方法(上)
asp.net中GridView控件遍历的小例子
ASP.NET中Image控件使用详解
asp.net微软图表控件使用示例代码分享
ASP.net的验证控件浅析
ASP.NET的控件AdRotator用法分析
ASP.NET中 Wizard 控件的使用方法
ASP.NET Table 表格控件的使用方法
ASP.NET中 PlaceHolder 控件的使用方法
最新网友评论  共有(0)条评论 发布评论 返回顶部
月排行榜

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  服务