GridView 与自定义对象的绑定和分页

一、自定义对象和对象集合

using System;
using System.Collections;
using System.Collections.Generic;


/// <summary>
/// 手机模块定位
/// </summary>

public class Bus
{
    
public Bus(string name, float longitude, float latitude)
    
{
        
this.name = name;
        
this.latitude = latitude;
        
this.longitude = longitude;
    }


    
string name;
    
float longitude, latitude;

    
public string Name
    
{
        
get return name; }
    }


    
public float Longitude
    
{
        
get return longitude; }
    }


    
public float Latitude
    
{
        
get return latitude; }
    }

}



/// <summary>
/// 手机模块集合
/// </summary>

public class BusCollection
{
    List
<Bus> col;

    
public BusCollection()
    
{
        col 
= new List<Bus>();
        
for (int i = 0; i < 500; i++)
        
{
            Bus b 
= new Bus("13501401" + i.ToString("d3"), 118.333f32.1123f);
            col.Add(b);
        }

    }



    
public List<Bus> Collection
    
{
        
get return col; }
    }

}

二、页面表现逻辑
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>自定义对象绑定与分页</title>
    
<link href="StyleSheet.css" rel="stylesheet" type="text/css" />
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<asp:GridView ID="GridView1" 
            runat
="server" 
            AutoGenerateColumns
="False" 
            CssClass
="class2" 
            EnableViewState
="False" 
            AllowPaging
="true" 
            OnPageIndexChanging
="GridView1_PageIndexChanging">
            
<Columns>
                
<asp:BoundField DataField="Name" HeaderText="手机号码" />
                
<asp:BoundField DataField="Longitude" DataFormatString="{0:0.00000}" HeaderText="经度" />
                
<asp:BoundField DataField="Latitude" DataFormatString="{0:0.00000}" HeaderText="纬度" />
            
</Columns>
        
</asp:GridView>
    
</div>
    
</form>
</body>
</html>

后台代码
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
if (!IsPostBack)
        
{
            DataBind();
        }

    }

    
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    
{
        GridView1.PageIndex 
= e.NewPageIndex;
        DataBind();
    }



    
private void DataBind()
    
{
        BusCollection c 
= new BusCollection();
        GridView1.DataSource 
= c.Collection;
        GridView1.DataBind();
    }

}


样式表StyleSheet.css
*
{
    font
-size: 9pt;
    font
-family: Verdana, 宋体, Tahoma;
}


.class2
{
    border
-collapse:collapse; 
    border: solid 2px #
336666;
}


.class2 td
{
    padding: 5px 10px;
    border: solid 1px #dcdcdc;
    
}

.class2 th
{
    background
-color: #336666;
    color: #ffffff;
    height: 
2.5em;
}





posted @ 2008-03-04 15:44  protorock  阅读(631)  评论(0编辑  收藏  举报