当前位置: 首页 > news >正文

title 门户网站建设招标书/推广普通话心得体会

title 门户网站建设招标书,推广普通话心得体会,海外网络服务器官网,wordpress激活插件有时候用GridView,DataPager配合使用绑定数据库,总算把数据库的数据读取出来,并且有‘首页-上一页-下一页-末页’显示,但是发现点击‘首页-上一页-下一页-末页’这些按钮的时候,总要点击两次。其实解决的方法很简单&am…

有时候用GridView,DataPager配合使用绑定数据库,总算把数据库的数据读取出来,并且有‘首页-上一页-下一页-末页’显示,但是发现点击‘首页-上一页-下一页-末页’这些按钮的时候,总要点击两次。其实解决的方法很简单,只需在GridView的PreRender事件再绑定数据库一次即可。

因为页面先执行Page_Load,然后再GridView_PreRender。

下面请看详细例子:

一,前台页面的

<%@ 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>GridView的应用</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView2" runat="server" onprerender="GridView2_PreRender">
<Columns>
<asp:TemplateField HeaderText="Id">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Id") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("Id") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Name">
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("Name") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("Name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>

</asp:GridView>

<asp:DataPager ID="DataPager1" PagedControlID="GridView2" PageSize="15" runat="server">
<Fields>
<asp:NextPreviousPagerField FirstPageText="首页" ShowPreviousPageButton="true" ShowLastPageButton="false"
ShowNextPageButton="false" ShowFirstPageButton="true" />
<asp:NumericPagerField />
<asp:TemplatePagerField>
</asp:TemplatePagerField>
<asp:NextPreviousPagerField LastPageText="末页" ShowFirstPageButton="false" ShowNextPageButton="true"
ShowPreviousPageButton="false" ShowLastPageButton="true" />
</Fields>
</asp:DataPager>
</div>
</form>
</body>
</html>

二,后台页面

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

}
}
public void bind() {
GridView2.DataSource = UserInfoService.GetUserInfo();//这个是你在服务层写好获取用户的集合list
GridView2.DataBind();
}
protected void GridView2_PreRender(object sender, EventArgs e)
{
bind();
}
}

可是问题来了,如果你想要在此页面再进行另外操作,如如果你要查询的操作,发现点击‘首页-上一页-下一页-末页’这些按钮的时候,依然要点击两次。解决此种情况,你可以在后台定义一个全局变量bFlag来标识你进行的是哪一种操作,页面触发的是哪一种事件。例子如下:

一,前台页面添加一个文本框TextBox和按钮Button,代码如下:

<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Select" οnclick="Button1_Click" /></div>
<div>
<asp:GridView ID="GridView2" runat="server" onprerender="GridView2_PreRender">
<Columns>
<asp:TemplateField HeaderText="Id">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Id") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("Id") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Name">
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("Name") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("Name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>

</asp:GridView>

<asp:DataPager ID="DataPager1" PagedControlID="GridView2" PageSize="15" runat="server">
<Fields>
<asp:NextPreviousPagerField FirstPageText="首页" ShowPreviousPageButton="true" ShowLastPageButton="false"
ShowNextPageButton="false" ShowFirstPageButton="true" />
<asp:NumericPagerField />
<asp:TemplatePagerField>
</asp:TemplatePagerField>
<asp:NextPreviousPagerField LastPageText="末页" ShowFirstPageButton="false" ShowNextPageButton="true"
ShowPreviousPageButton="false" ShowLastPageButton="true" />
</Fields>
</asp:DataPager>
</div>
</form>
</body>

二,后台的,定义一个全局变量bFlag,添加一个按钮触发事件Button1_Click和另外写一个bindSelect() 方法。代码如下:

public partial class _Default : System.Web.UI.Page
{
int bFlag = 0;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bind();

}
}
public void bind() {
GridView2.DataSource = UserInfoService.GetUserInfo();
GridView2.DataBind();
}
protected void GridView2_PreRender(object sender, EventArgs e)
{
if (bFlag == 1)
bindSelect();
else
bind();
}
public void bindSelect() {

GridView2.DataSource = UserInfoService.GetUserInfoBySelect(txtName.Text);
GridView2.DataBind();

}
protected void Button1_Click(object sender, EventArgs e)
{
bFlag = 1;
bindSelect();//点击事件里面调用查询数据库的
}
}


http://www.lbrq.cn/news/1601101.html

相关文章:

  • 珠海网站建设知识/快速提高关键词排名的软件
  • 网站地图 设计/网络营销的方式有哪些
  • 杭州seo网站推广/网络营销的三种方式
  • 网站建设南昌/软文网站有哪些
  • 个人电脑建立网站/长沙官网seo技术
  • 做搜索网站挣钱/百度seo点击排名优化
  • 企业营销网站模板免费下载/查网站
  • 温岭市建设工程质量安全网站/360推广登录平台
  • office做网站的软件/360营销
  • 泰州百度seo公司/seo关键字优化
  • 郑州企业网站设计公司哪家好/小程序推广运营的公司
  • 织梦做动漫网站/快点tv下载安装
  • 制作社交app的网站/网络优化公司有哪些
  • html网站模版/优化网站排名
  • 给传销产品做网站/西安网
  • 武汉网站建设dw027/线上营销
  • 南京每月做社保明细在哪个网站查/1个百度指数代表多少搜索
  • 建筑网建设通网站作用/武汉seo网站优化技巧
  • h5响应式网站开发成本/种子资源
  • 茂名专业网站制作公司/网站权重如何查询
  • 永康网站优化/怎么进行网络推广
  • 有哪个网站可以做口腔执业助理医师题库/网站优化排名查询
  • 做外贸选取哪个网站/厦门人才网官网招聘
  • 对网站建设培训的建议/成都网站搜索排名优化公司
  • 制作婚恋网站/搜索引擎优化介绍
  • 如何在网站做404页面/第三方营销策划公司有哪些
  • 泰安网站开发公司/怎么进行推广
  • 做论坛网站需要备案/全网营销代理加盟
  • 如何查询网站空间/南宁网络优化seo费用
  • 快站建站教程/携程: 2023年旅行搜索上涨超900%
  • io_destroy系统调用及示例
  • Unity_数据持久化_XML序列化与反序列化
  • GaussDB SQL执行计划详解
  • 入门MicroPython+ESP32:安装逗脑IDE及驱动
  • [BJDCTF2020]EasySearch
  • JVM学习日记(十四)Day14——性能监控与调优(一)