为了更好的显示加载的效果,,asp.net ajax控件里有UpdateProgress非常常用,就可以实现这个功能。
default.aspx设计代码如下:
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Label ID="Label2" runat="server" Text="请输入用户名"></asp:Label><input type="text" id="text2" /><asp:Button
ID="Button2" runat="server" Text="查询" onclick="Button1_Click" />
<asp:UpdateProgress ID="UpdateProgress1" runat="server">
<ProgressTemplate>
正在加载数据.............
</ProgressTemplate>
</asp:UpdateProgress>
<asp:GridView ID="GridView1" runat="server" Width="347px" AllowPaging="True"
AutoGenerateColumns="False" PageSize="2"
onpageindexchanging="GridView1_PageIndexChanging">
<Columns>
<asp:BoundField HeaderText="编号" DataField="id"/>
<asp:BoundField HeaderText="用户名" DataField="UserName"/>
<asp:BoundField HeaderText="密码" DataField="PassWord"/>
<asp:BoundField HeaderText="类别" DataField="unit"/>
</Columns>
</asp:GridView>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button2" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</div>
</form>
default.cs:
protected void Button1_Click(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(3000);
databind();
}
public void databind()
{
string sql = "SELECT [id], [UserName], [PassWord], [unit] FROM [UserTable]";
string con = "Data Source=.;Initial Catalog=OfficeData;Persist Security Info=True;User ID=sa;Password=1234";
SqlConnection mycon = new SqlConnection(con);
mycon.Open();
SqlDataAdapter mydt = new SqlDataAdapter(sql, mycon);
DataSet ds = new DataSet();
mydt.Fill(ds);
GridView1.DataSource = ds;
GridView1.DataBind();
mycon.Close();
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
databind();
}
posted on 2008-04-25 16:43
冷明军 阅读(425)
评论(2) 编辑 收藏 所属分类:
asp.net