GIRDVIEWD的一些小技巧

来源:互联网 发布:知乎一小时 编辑:程序博客网 时间:2024/06/06 19:19

由于没有学.net1.0,直接学2.0.在做网页一开始发现有很好用的空件那就是GIRDVIEWD,C#自带可以很快绑定,刚开写代码的可以用一下,慢慢的你会发现,很多你想要的功能都没有,那就需要你自己写。下面介绍几个自己整理的小技巧,大家见笑了。

 


1.某列鼠标移上去显示手型:
  e.Row.Cells[1].Attributes.Add("onmouseover", "javascript:this.style.cursor='hand'");


2.某列链接:
  e.Row.Cells[1].Attributes.Add("onclick", "window.open('A.aspx?ID=" + e.Row.Cells[1].Text + "')");


3.某列删除提示:
  e.Row.Cells[9].Attributes.Add("onclick", "javascript:return confirm('你确认要删除/"" + e.Row.Cells[1].Text + "/"吗?')");


4.GIRDVIEWD不现实表头

  gridview1.ShowHeader=false


5.GridView调节显示字体颜色和距离

  <RowStyle CssClass="gv_rowStyle" />
 <EditRowStyle CssClass="gv_eidtRowStyle" />
 <HeaderStyle CssClass="gv_headerStyle" />
 <AlternatingRowStyle CssClass="gv_alternationRowStyle" />
 <EmptyDataRowStyle CssClass="gv_emptyDataRowStyle" />
 <SelectedRowStyle CssClass="gv_selectedRowStyle" />
 <PagerStyle CssClass="gv_pagerStyle" />
 <FooterStyle CssClass="gv_footerStyle" BackColor="#507CD1" Font-Bold="True" ForeColor="White" />


6.数据绑定方式有两种,如下示例:
  Eval方式 <%# Eval("id") %>
  Bind方式 <%# Bind("id","~/info.aspx?id={0}") %>

 推荐使用第一种方式,可以在一个<%# %>里放入多个绑定,而第二种只能如此绑定一个值
  <%# Eval("id") + ":" + Eval("name")%>
做超级链接的控件,我们也有多种选择:
1 asp:LinkButton
示例
<asp:LinkButton ID="LinkButton2" OnClientClick=<%# "window.open('info.aspx?id=" + Eval("id") + "&name=" + Eval("name") + "')" %> runat="server"><%# "LinkButton方式绑定:" + Eval("id") %></asp:LinkButton>

2 asp:HyperLink
示例
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# "~/info.aspx?id=" + Eval("id") + "&name=" + Eval("name") %>' Text='<%# "HyperLink控件:" + Eval("id") %>'></asp:HyperLink>

3 a标签
示例
<a href='<%# "info.aspx?id=" + Eval("id") + "&name=" + Eval("name") %>'>a标签:<%# Eval("id") + ":" + Eval("name")%></a>
<a href='javascript:alert("<%# "~/info.aspx?id=" + Eval("id") + "&name=" + Eval("name") %>")'>链接js事件:<%# Eval("id") %></a>

LinkButton 不好设置,推荐使用HyperLink或者a的方式,简单实用。特别是a标签,使用javascript的方法也比较方便。

补充:
<asp:LinkButton ID="LinkButton3" runat="server" PostBackUrl='<%# "~/Default.aspx?id=" + Eval("FUserID") %>'
CausesValidation="False" Text="跳转编辑"></asp:LinkButton>


7.GIRDVIEWD页码加大加色

protected   void   GridView1_RowDataBound(object   sender,   GridViewRowEventArgs   e) 
          { 
                  if   (e.Row.RowType   ==   DataControlRowType.Pager) 
                  { 
                      
                          TableRow   row   =   e.Row.Controls[0].Controls[0].Controls[0]   as   TableRow; 
                          foreach   (TableCell   cell   in   row.Cells) 
                          { 
                                  Control   lb   =   cell.Controls[0]   ; 
                                  if   (lb   is   Label   ) 
                                  { 
                                          
                                                  ((Label)lb).ForeColor   =   System.Drawing.Color.Red; 
                                                  ((Label)lb).Font.Size   =   new   FontUnit("40px"); 
                                                  
                                  } 
                                  else   if   (lb   is   LinkButton) 
                                  { 
                                        
                                  } 
                          } 
  
                  } 
          }

8.GIRDVIEWD增加序列号

 

        int page_int = GridView1.PageIndex * GridView1.PageSize;
        if (e.Row.RowIndex != -1)
        {
            int id = page_int + e.Row.RowIndex + 1;
            e.Row.Cells[0].Text = id.ToString();
        }

 

第一次发小技巧的文章,请多包涵

原创粉丝点击