使用DataList分页显示数据,双向排序,添加checkbox控件。
来源:互联网 发布:ppt转换器软件 编辑:程序博客网 时间:2024/04/28 19:55
<%@ Page language="c#" Codebehind="DataGrid1.aspx.cs" AutoEventWireup="false" Inherits="News.DataGrid1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>DataGrid1</title>
<meta content="Microsoft Visual Studio 7.0" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form runat="server">
<TABLE id="Table1" cellSpacing="1" cellPadding="1" width="100%" border="0">
<TR>
<td><asp:datagrid id="DataGrid2" runat="server" AllowSorting="True" AutoGenerateColumns="False" AllowPaging="True" PageSize="10" Width="100%" GridLines="Horizontal" AlternatingItemStyle-BackColor="#eeeeee">
<SelectedItemStyle Font-Bold="True" ForeColor="#CCFF99" BackColor="#009999"></SelectedItemStyle>
<AlternatingItemStyle BackColor="#EEEEEE"></AlternatingItemStyle>
<HeaderStyle BackColor="#00AAAA"></HeaderStyle>
<FooterStyle ForeColor="#003399" BackColor="#99CCCC"></FooterStyle>
<Columns>
<asp:TemplateColumn HeaderText="选择">
<HeaderStyle Width="40px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<ItemTemplate>
<asp:CheckBox id="checkbox" runat="server"></asp:CheckBox>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox id="chkExportON" runat="server"></asp:CheckBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="id" SortExpression="id" HeaderText="ID号"></asp:BoundColumn>
<asp:HyperLinkColumn DataNavigateUrlField="id" DataNavigateUrlFormatString="javascript:varwin=window.open('detail.aspx?ID={0}',null,'width=300,height=200');window.Close();" DataTextField="username" HeaderText="用户名" SortExpression="username"></asp:HyperLinkColumn>
<asp:BoundColumn DataField="email" HeaderText="Email" SortExpression="email"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="Email">
<ItemTemplate>
<asp:Label id=lblColumn runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.id") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle HorizontalAlign="Right" ForeColor="#003399" BackColor="#99CCCC" Mode="NumericPages"></PagerStyle>
</asp:datagrid></td>
</TR>
<tr>
<td>
<P><asp:panel id="Panel1" runat="server" HorizontalAlign="Right">
<asp:label id="lblPageCount" runat="server"></asp:label>
<asp:label id="lblCurrentIndex" runat="server"></asp:label>
<asp:LinkButton id="btnFirst" runat="server" CommandName="First">首页</asp:LinkButton>
<asp:LinkButton id="btnPrevious" runat="server" CommandName="Previous">上一页</asp:LinkButton><FONT face="宋体">
<asp:LinkButton id="btnNext" runat="server" CommandName="Next">下一页</asp:LinkButton>
<asp:LinkButton id="btnEnd" runat="server" CommandName="End">未页</asp:LinkButton>
<asp:TextBox id="txtIndex" runat="server" Width="24px" MaxLength="2" Columns="2"></asp:TextBox>
<asp:Button id="btnGo" runat="server" Text="Go!" BackColor="Gainsboro" BorderWidth="1px" BorderStyle="Solid" BorderColor="Silver"></asp:Button>
<asp:Label id="lblError" runat="server" Visible="False" ForeColor="Red">No that page!</asp:Label></FONT></asp:panel></P>
</td>
</tr>
<tr>
<td>
<asp:button id="cmdSelectAll" runat="server" Text="全选"></asp:button><asp:button id="cmdFindSelected" runat="server" Text="取得选择的项"></asp:button>
<asp:panel id="pnlIndex" runat="server"></asp:panel>
<asp:label id="Label1" runat="server"></asp:label></td>
</tr>
</TABLE>
</form>
</body>
</HTML>
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Configuration;
using System.Data.SqlClient;
namespace News
{
/// <summary>
/// DataGrid1 的摘要说明。
/// </summary>
public class DataGrid1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid2;
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.LinkButton btnPrevious;
protected System.Web.UI.WebControls.LinkButton btnNext;
protected System.Web.UI.WebControls.TextBox txtIndex;
protected System.Web.UI.WebControls.Button btnGo;
protected System.Web.UI.WebControls.Label lblError;
protected System.Web.UI.WebControls.Panel Panel1;
protected System.Web.UI.WebControls.Panel pnlIndex;
protected System.Web.UI.WebControls.LinkButton btnFirst;
protected System.Web.UI.WebControls.LinkButton btnEnd;
protected System.Web.UI.WebControls.Label lblPageCount;
protected System.Web.UI.WebControls.Label lblCurrentIndex;
protected System.Web.UI.WebControls.Button cmdSelectAll;
protected System.Web.UI.WebControls.Button cmdFindSelected;
string ConnectionStr=ConfigurationSettings.AppSettings["connStr"];
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
{
//设置排序表达式
ViewState["SortOrder"] = "id";
//设置排序的升降序
ViewState["OrderDire"] = "ASC";
BindGrid();
}
}
private void BindGrid()
{
//定义数据连接对象,其中数据库连接字符串是在Web.Config文件中定义的
SqlConnection SconnStr=new SqlConnection(ConnectionStr);
//创建数据适配器对象
SqlDataAdapter sda=new SqlDataAdapter("select * from user_info",SconnStr);
//创建DataSet对象
DataSet ds=new DataSet();
try
{
//填充数据集
sda.Fill(ds,"user_info");
//取得填充表格的默认视图
DataView view = ds.Tables["user_info"].DefaultView;
//设置排序关键字
string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];
//设置排序表达式
view.Sort = sort;
//进行数据绑定
DataGrid2.DataSource=view;
DataGrid2.DataBind();
}
catch(Exception error)
{
Response.Write(error.ToString());
}
}
//显示当前分页信息
private void ShowStats()
{
//显示当前页面是第几页
lblCurrentIndex.Text = "第 " + (DataGrid2.CurrentPageIndex + 1).ToString() + " 页";
//显示总页数
lblPageCount.Text = "总共 " + DataGrid2.PageCount.ToString() + " 页";
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DataGrid2.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGridPage_Page);
this.DataGrid2.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.DataGrid2_SortCommand);
this.DataGrid2.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.changeRowColor);
this.btnFirst.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnPrevious.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnNext.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnEnd.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnGo.Click += new System.EventHandler(this.btnGo_Click);
this.cmdSelectAll.Click += new System.EventHandler(this.cmdSelectAll_Click);
this.cmdFindSelected.Click += new System.EventHandler(this.cmdFindSelected_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
//翻页效果
private void NavigationButtonClick(object sender, System.EventArgs e)
{
string direction=((LinkButton)sender).CommandName;
switch(direction.ToUpper())
{
case "PREVIOUS":
//如果当前页不是首页
if (DataGrid2.CurrentPageIndex > 0)
{
//设置DataGrid控件的当前页索引为上一页面
DataGrid2.CurrentPageIndex -= 1;
}
break;
case "NEXT":
if (DataGrid2.CurrentPageIndex < (DataGrid2.PageCount - 1))
{
//设置DataGrid控件的当前页索引为下一页面
DataGrid2.CurrentPageIndex += 1;
}
break;
case "END":
DataGrid2.CurrentPageIndex = (DataGrid2.PageCount - 1);
break;
default:
DataGrid2.CurrentPageIndex = 0;
break;
}
BindGrid();
ShowStats();
}
//去第几页效果
private void btnGo_Click(object sender, System.EventArgs e)
{
int pageIndex=0;
try
{
pageIndex=Convert.ToInt32(txtIndex.Text);
}
catch(Exception ex)
{
lblError.Visible=true;
lblError.Text=ex.Message;
}
finally
{
lblError.Visible=false;
lblError.Text="No that page!";
}
if(pageIndex>0&&pageIndex<=DataGrid2.PageCount)
{
try
{
DataGrid2.CurrentPageIndex=Math.Min(DataGrid2.PageCount,pageIndex-1);
BindGrid();
ShowStats();
}
catch
{
lblError.Visible=true;
}
finally
{
lblError.Visible=false;
}
}
else
{
lblError.Visible=true;
}
}
public void DataGridPage_Page(object sender, DataGridPageChangedEventArgs e)
{
//设置DataGrid当前页的索引值为用户选择的页的索引
DataGrid2.CurrentPageIndex = e.NewPageIndex;
//重新绑定数据
BindGrid();
//显示当前分页信息
ShowStats();
}
// ItemDataBound事件
private void changeRowColor(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
//如果是数据项并且是交替项
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
//添加自定义属性,当鼠标移过来时设置该行的背景色为"6699ff",并保存原背景色
e.Item.Attributes.Add("onmouseover","currentcolor=this.style.backgroundColor;this.style.backgroundColor='#B4BDB3'");
//添加自定义属性,当鼠标移走时还原该行的背景色
e.Item.Attributes.Add("onmouseout","this.style.backgroundColor=currentcolor");
}
}
private void cmdSelectAll_Click(object sender, System.EventArgs e)
{
System.Web.UI.WebControls.CheckBox checkbox;
//如果要全选
if(cmdSelectAll.Text == "全选")
{
//循环设置DataGrid控件中的项
foreach(DataGridItem oDataGridItem in DataGrid2.Items)
{
//建立模板列中CheckBox控件的引用
checkbox = (CheckBox)oDataGridItem.FindControl("checkbox");
//选中
checkbox.Checked =true;
}
cmdSelectAll.Text = "全消";
}
else
{
foreach(DataGridItem oDataGridItem in DataGrid2.Items)
{
//建立模板列中CheckBox控件的引用
checkbox = (CheckBox)oDataGridItem.FindControl("checkbox");
//取消
checkbox.Checked = false;
}
cmdSelectAll.Text = "全选";
}
}
private void cmdFindSelected_Click(object sender, System.EventArgs e)
{
System.Web.UI.WebControls.CheckBox chkExport;
String sID;
System.Text.StringBuilder strMsg = new System.Text.StringBuilder("选中项的City字段值分别为:<hr color=red>");
//循环取的DataGrid控件中选定项的值
foreach(DataGridItem oDataGridItem in DataGrid2.Items)
{
chkExport = (CheckBox)oDataGridItem.FindControl("checkbox");
//如果选中了则取值
if(chkExport.Checked)
{
sID = ((Label)(oDataGridItem.FindControl("lblColumn"))).Text;
strMsg.Append(sID+"<br><hr color=red>");
}
}
//显示选中项的值
Label1.Text = strMsg.ToString();
}
private void DataGrid2_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
//取得排序表达式
string vortExp = e.SortExpression;
//如果是当前排序表达式
if(ViewState["SortOrder"].ToString() == vortExp)
{
//如果原来是降序则改为升序,反之亦然
if((string)ViewState["OrderDire"] == "Desc")
ViewState["OrderDire"] = "ASC";
else
ViewState["OrderDire"] = "Desc";
}
else
{
//重新设置排序关键字
ViewState["SortOrder"] = e.SortExpression;
}
BindGrid();
}
}
}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>DataGrid1</title>
<meta content="Microsoft Visual Studio 7.0" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form runat="server">
<TABLE id="Table1" cellSpacing="1" cellPadding="1" width="100%" border="0">
<TR>
<td><asp:datagrid id="DataGrid2" runat="server" AllowSorting="True" AutoGenerateColumns="False" AllowPaging="True" PageSize="10" Width="100%" GridLines="Horizontal" AlternatingItemStyle-BackColor="#eeeeee">
<SelectedItemStyle Font-Bold="True" ForeColor="#CCFF99" BackColor="#009999"></SelectedItemStyle>
<AlternatingItemStyle BackColor="#EEEEEE"></AlternatingItemStyle>
<HeaderStyle BackColor="#00AAAA"></HeaderStyle>
<FooterStyle ForeColor="#003399" BackColor="#99CCCC"></FooterStyle>
<Columns>
<asp:TemplateColumn HeaderText="选择">
<HeaderStyle Width="40px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<ItemTemplate>
<asp:CheckBox id="checkbox" runat="server"></asp:CheckBox>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox id="chkExportON" runat="server"></asp:CheckBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="id" SortExpression="id" HeaderText="ID号"></asp:BoundColumn>
<asp:HyperLinkColumn DataNavigateUrlField="id" DataNavigateUrlFormatString="javascript:varwin=window.open('detail.aspx?ID={0}',null,'width=300,height=200');window.Close();" DataTextField="username" HeaderText="用户名" SortExpression="username"></asp:HyperLinkColumn>
<asp:BoundColumn DataField="email" HeaderText="Email" SortExpression="email"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="Email">
<ItemTemplate>
<asp:Label id=lblColumn runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.id") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle HorizontalAlign="Right" ForeColor="#003399" BackColor="#99CCCC" Mode="NumericPages"></PagerStyle>
</asp:datagrid></td>
</TR>
<tr>
<td>
<P><asp:panel id="Panel1" runat="server" HorizontalAlign="Right">
<asp:label id="lblPageCount" runat="server"></asp:label>
<asp:label id="lblCurrentIndex" runat="server"></asp:label>
<asp:LinkButton id="btnFirst" runat="server" CommandName="First">首页</asp:LinkButton>
<asp:LinkButton id="btnPrevious" runat="server" CommandName="Previous">上一页</asp:LinkButton><FONT face="宋体">
<asp:LinkButton id="btnNext" runat="server" CommandName="Next">下一页</asp:LinkButton>
<asp:LinkButton id="btnEnd" runat="server" CommandName="End">未页</asp:LinkButton>
<asp:TextBox id="txtIndex" runat="server" Width="24px" MaxLength="2" Columns="2"></asp:TextBox>
<asp:Button id="btnGo" runat="server" Text="Go!" BackColor="Gainsboro" BorderWidth="1px" BorderStyle="Solid" BorderColor="Silver"></asp:Button>
<asp:Label id="lblError" runat="server" Visible="False" ForeColor="Red">No that page!</asp:Label></FONT></asp:panel></P>
</td>
</tr>
<tr>
<td>
<asp:button id="cmdSelectAll" runat="server" Text="全选"></asp:button><asp:button id="cmdFindSelected" runat="server" Text="取得选择的项"></asp:button>
<asp:panel id="pnlIndex" runat="server"></asp:panel>
<asp:label id="Label1" runat="server"></asp:label></td>
</tr>
</TABLE>
</form>
</body>
</HTML>
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Configuration;
using System.Data.SqlClient;
namespace News
{
/// <summary>
/// DataGrid1 的摘要说明。
/// </summary>
public class DataGrid1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid2;
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.LinkButton btnPrevious;
protected System.Web.UI.WebControls.LinkButton btnNext;
protected System.Web.UI.WebControls.TextBox txtIndex;
protected System.Web.UI.WebControls.Button btnGo;
protected System.Web.UI.WebControls.Label lblError;
protected System.Web.UI.WebControls.Panel Panel1;
protected System.Web.UI.WebControls.Panel pnlIndex;
protected System.Web.UI.WebControls.LinkButton btnFirst;
protected System.Web.UI.WebControls.LinkButton btnEnd;
protected System.Web.UI.WebControls.Label lblPageCount;
protected System.Web.UI.WebControls.Label lblCurrentIndex;
protected System.Web.UI.WebControls.Button cmdSelectAll;
protected System.Web.UI.WebControls.Button cmdFindSelected;
string ConnectionStr=ConfigurationSettings.AppSettings["connStr"];
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
{
//设置排序表达式
ViewState["SortOrder"] = "id";
//设置排序的升降序
ViewState["OrderDire"] = "ASC";
BindGrid();
}
}
private void BindGrid()
{
//定义数据连接对象,其中数据库连接字符串是在Web.Config文件中定义的
SqlConnection SconnStr=new SqlConnection(ConnectionStr);
//创建数据适配器对象
SqlDataAdapter sda=new SqlDataAdapter("select * from user_info",SconnStr);
//创建DataSet对象
DataSet ds=new DataSet();
try
{
//填充数据集
sda.Fill(ds,"user_info");
//取得填充表格的默认视图
DataView view = ds.Tables["user_info"].DefaultView;
//设置排序关键字
string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];
//设置排序表达式
view.Sort = sort;
//进行数据绑定
DataGrid2.DataSource=view;
DataGrid2.DataBind();
}
catch(Exception error)
{
Response.Write(error.ToString());
}
}
//显示当前分页信息
private void ShowStats()
{
//显示当前页面是第几页
lblCurrentIndex.Text = "第 " + (DataGrid2.CurrentPageIndex + 1).ToString() + " 页";
//显示总页数
lblPageCount.Text = "总共 " + DataGrid2.PageCount.ToString() + " 页";
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DataGrid2.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGridPage_Page);
this.DataGrid2.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.DataGrid2_SortCommand);
this.DataGrid2.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.changeRowColor);
this.btnFirst.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnPrevious.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnNext.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnEnd.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnGo.Click += new System.EventHandler(this.btnGo_Click);
this.cmdSelectAll.Click += new System.EventHandler(this.cmdSelectAll_Click);
this.cmdFindSelected.Click += new System.EventHandler(this.cmdFindSelected_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
//翻页效果
private void NavigationButtonClick(object sender, System.EventArgs e)
{
string direction=((LinkButton)sender).CommandName;
switch(direction.ToUpper())
{
case "PREVIOUS":
//如果当前页不是首页
if (DataGrid2.CurrentPageIndex > 0)
{
//设置DataGrid控件的当前页索引为上一页面
DataGrid2.CurrentPageIndex -= 1;
}
break;
case "NEXT":
if (DataGrid2.CurrentPageIndex < (DataGrid2.PageCount - 1))
{
//设置DataGrid控件的当前页索引为下一页面
DataGrid2.CurrentPageIndex += 1;
}
break;
case "END":
DataGrid2.CurrentPageIndex = (DataGrid2.PageCount - 1);
break;
default:
DataGrid2.CurrentPageIndex = 0;
break;
}
BindGrid();
ShowStats();
}
//去第几页效果
private void btnGo_Click(object sender, System.EventArgs e)
{
int pageIndex=0;
try
{
pageIndex=Convert.ToInt32(txtIndex.Text);
}
catch(Exception ex)
{
lblError.Visible=true;
lblError.Text=ex.Message;
}
finally
{
lblError.Visible=false;
lblError.Text="No that page!";
}
if(pageIndex>0&&pageIndex<=DataGrid2.PageCount)
{
try
{
DataGrid2.CurrentPageIndex=Math.Min(DataGrid2.PageCount,pageIndex-1);
BindGrid();
ShowStats();
}
catch
{
lblError.Visible=true;
}
finally
{
lblError.Visible=false;
}
}
else
{
lblError.Visible=true;
}
}
public void DataGridPage_Page(object sender, DataGridPageChangedEventArgs e)
{
//设置DataGrid当前页的索引值为用户选择的页的索引
DataGrid2.CurrentPageIndex = e.NewPageIndex;
//重新绑定数据
BindGrid();
//显示当前分页信息
ShowStats();
}
// ItemDataBound事件
private void changeRowColor(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
//如果是数据项并且是交替项
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
//添加自定义属性,当鼠标移过来时设置该行的背景色为"6699ff",并保存原背景色
e.Item.Attributes.Add("onmouseover","currentcolor=this.style.backgroundColor;this.style.backgroundColor='#B4BDB3'");
//添加自定义属性,当鼠标移走时还原该行的背景色
e.Item.Attributes.Add("onmouseout","this.style.backgroundColor=currentcolor");
}
}
private void cmdSelectAll_Click(object sender, System.EventArgs e)
{
System.Web.UI.WebControls.CheckBox checkbox;
//如果要全选
if(cmdSelectAll.Text == "全选")
{
//循环设置DataGrid控件中的项
foreach(DataGridItem oDataGridItem in DataGrid2.Items)
{
//建立模板列中CheckBox控件的引用
checkbox = (CheckBox)oDataGridItem.FindControl("checkbox");
//选中
checkbox.Checked =true;
}
cmdSelectAll.Text = "全消";
}
else
{
foreach(DataGridItem oDataGridItem in DataGrid2.Items)
{
//建立模板列中CheckBox控件的引用
checkbox = (CheckBox)oDataGridItem.FindControl("checkbox");
//取消
checkbox.Checked = false;
}
cmdSelectAll.Text = "全选";
}
}
private void cmdFindSelected_Click(object sender, System.EventArgs e)
{
System.Web.UI.WebControls.CheckBox chkExport;
String sID;
System.Text.StringBuilder strMsg = new System.Text.StringBuilder("选中项的City字段值分别为:<hr color=red>");
//循环取的DataGrid控件中选定项的值
foreach(DataGridItem oDataGridItem in DataGrid2.Items)
{
chkExport = (CheckBox)oDataGridItem.FindControl("checkbox");
//如果选中了则取值
if(chkExport.Checked)
{
sID = ((Label)(oDataGridItem.FindControl("lblColumn"))).Text;
strMsg.Append(sID+"<br><hr color=red>");
}
}
//显示选中项的值
Label1.Text = strMsg.ToString();
}
private void DataGrid2_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
//取得排序表达式
string vortExp = e.SortExpression;
//如果是当前排序表达式
if(ViewState["SortOrder"].ToString() == vortExp)
{
//如果原来是降序则改为升序,反之亦然
if((string)ViewState["OrderDire"] == "Desc")
ViewState["OrderDire"] = "ASC";
else
ViewState["OrderDire"] = "Desc";
}
else
{
//重新设置排序关键字
ViewState["SortOrder"] = e.SortExpression;
}
BindGrid();
}
}
}
- 使用DataList分页显示数据,双向排序,添加checkbox控件。
- 使用DataList分页显示数据,双向排序,添加checkbox控件
- [原创]使用DataList分页显示数据,双向排序,添加checkbox控件。
- 使用DataList控件绑定数据并实现分页
- [原创]DATAGRID的应用(双向排序,包括checkbox控件,分页,修改,保存,取消)
- DATAGRID的应用(双向排序,包括checkbox控件,分页,修改,保存,取消)
- [原创]使用DataList显示数据
- 使用GridView控件分页显示数据
- 使用DNN的分页控件对DATALIST控件进行分页
- DataGrid,DataList,Repeater等数据访问控件的区别及总结、使用Repeater控件显示数据
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示功能
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示[转]
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示功能
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示
- (C#)DataGrid实现自定义分页,鼠标移至变色,删除确认、可编辑,可删除
- 周末买到了心仪的衣服
- 使DataList控件有翻页功能
- DATAGRID的应用(双向排序,包括checkbox控件,分页,修改,保存,取消)
- VB源码之友2006 测试版发布,欢迎大家下载测试
- 使用DataList分页显示数据,双向排序,添加checkbox控件。
- Asp.net中翻页问题的自定义用户控件
- java笔记一
- 如何让分页和排序共存?
- DataGrid的个性化分页
- 51单片机控制四相步进电机
- POK?PHP On KISS
- 自定义DataGrid分页设置
- 一个家伙的blog vc相关咚咚