您的位置:首页 > 编程语言 > C#

c#学习笔记(1)GridView问题

2013-10-30 10:34 197 查看

(1)Gridview隐藏列

在网上我查到了两种解决办法

一种是:

在RowCreated事件中书写如下代码

Public  void myTestFunction()
{
  string conString="....";//省略
    string sqlquery="...";//省略
   SqlConnection con = new SqlConnection(conString);
        SqlDataAdapter da = new SqlDataAdapter(sqlquery, con);
        DataSet ds = new DataSet();
        da.Fill(ds);
        ds.Tables[0].Columns[0].ColumnMapping = MappingType.Hidden;
        GridView1.DataSouce = ds.Tables[0];
        GridView1.DataBind() ;
 
}


Public  void myTestFunction()
{
  string conString="....";//省略
    string sqlquery="...";//省略
   SqlConnection con = new SqlConnection(conString);
        SqlDataAdapter da = new SqlDataAdapter(sqlquery, con);
        DataSet ds = new DataSet();
        da.Fill(ds);
        ds.Tables[0].Columns[0].ColumnMapping = MappingType.Hidden;
        GridView1.DataSouce = ds.Tables[0];
        GridView1.DataBind() ;
 
}


(2)GridView超链接

<asp:GridView ID="CommonUrl" Width="99%" runat="server" 
            BackColor="#FFF7E7" BorderColor="#DEBA84" Font-Size="12px"
            BorderStyle="None" BorderWidth="1px" 
            AutoGenerateColumns="False"  AllowPaging="True" 
            OnRowDataBound="CommonUrl_RowDataBound">
        	
            <FooterStyle BackColor="#F7DFB5" ForeColor="#000066" />
            <RowStyle ForeColor="#000066" BackColor="#BFE6F9"   HorizontalAlign="Center" />
            <SelectedRowStyle BackColor="#738A9C" ForeColor="White" />
            <PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" />
            <HeaderStyle BackColor="#66CCFF"  HorizontalAlign="Center"/>
            
            <Columns>                      
                 <asp:TemplateField HeaderText="常用连接">                        
                          <ItemTemplate>    
                                <asp:HyperLink ID="CommonUrl" runat="server" Text='<%#Eval("Name") %>' NavigateUrl='<%#Eval("Url") %>' Target="_blank"></asp:HyperLink>
                         </ItemTemplate>
                </asp:TemplateField>        
            </Columns>
            
        </asp:GridView>

超链接代码:

<a href="<%#Eval("Url")%>" target="_blank" ><%#Eval("Name")%></a>


<asp:HyperLink ID="CommonUrl" runat="server" Text='<%#Eval("Name") %>' NavigateUrl='<%#Eval("Url") %>' Target="_blank"></asp:HyperLink>


Name:对应数据库中链接地址的名称

Url:对应数据库中链接地址

另一种方法:

<asp:ButtonField CommandName="link" Text="填写" HeaderText="链接"> 
定义一个OnRowCommand="custom_rowcomand" 
public void custom_rowcomand(Object sender, GridViewCommandEventArgs e) 
    { 
        if (e.CommandName == "link") 
        {


(3)GridView自带分页

GridView自带的分页功能实现:

要实现GrdView分页的功能

操作如下:

1、更改GrdView控件的AllowPaging属性为true。

2、更改GrdView控件的PageSize属性为 任意数值(默认为10)

3、更改GrdView控件的PageSetting->Mode为Numeric等(默认为Numeric)该属性为分页样式。

GridView属性设置好了,从页面上也能看到分页样式。

现在开始实现分页的功能:

1、在<<asp:GridView ID=......>后添加,OnPageIndexChanging="GridView1_PageIndexChanging"

2、在对应的aspx.cs中添加:

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
InitPage(); //重新绑定GridView数据的函数
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: