Eric的分页条小控件

科技中介服务机构想要提升服务效率,需要哪些数智工具支持?.docx 科技中介服务机构想要提升服务效率,需要哪些数智工具支持? 立即下载

利用QueryString实现分页参数传递的分页条控件, 纯UI层使用, 不影响分层, 简单实用!

主要属性: RecordCount

设计时图示:  

源代码:

using System;
using System.Collections;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

[assembly: TagPrefix(
"EFPlatform.WebControls", "efp")]
namespace EFPlatform.WebControls
{
    [ToolboxData(
"<{0}:PagerBar runat="server"></{0}:PagerBar>")]
    
public class PagerBar : Control, INamingContainer
    {
        
#region Properties

        
#region Data(数据)
        
#region CurrentPage
        [Category(
"Data")]
        [DefaultValue(
1)]
        
public int CurrentPage
        {
            
get
            {
                
if(ViewState["CurrentPage"] == null)
                {
                    
try
                    {
                        ViewState[
"CurrentPage"] = int.Parse(HttpContext.Current.Request.QueryString[PageParamName]);
                    }
                    
catch
                    {
                        ViewState[
"CurrentPage"] = 1;
                    }
                }

                
return (int)ViewState["CurrentPage"];
            }

            
set
            {
                ViewState[
"CurrentPage"] = value;
            }
        }
        
#endregion

        
#region PageSize
        [Category(
"Data")]
        [DefaultValue(
10)]
        
public int PageSize
        {
            
get
            {
                
int pageSize = (ViewState["PageSize"] == null) ? 10 : (int)ViewState["PageSize"];
                
return (pageSize > 0) ? pageSize : 0;
            }

            
set
            {
                ViewState[
"PageSize"] = value;
            }
        }
        
#endregion

        
#region RecordCount
        [Category(
"Data")]
        [DefaultValue(
0)]
        
public int RecordCount
        {
            
get
            {
                
return (ViewState["RecordCount"] == null) ? 0 : (int)ViewState["RecordCount"];
            }

            
set
            {
                ViewState[
"RecordCount"] = value;
            }
        }
        
#endregion

        
#region PageCount
        [Browsable(
false)]
        
public int PageCount
        {
            
get
            {
                
return (int)Math.Ceiling((double)RecordCount / PageSize);
            }
        }
        
#endregion
        
#endregion

        
#region Navigation(导航)
        
#region PageParamName
        [Category(
"Navigation")]
        [DefaultValue(
"CurrentPage")]
        
public string PageParamName
        {
            
get
            {
                
return (ViewState["PageParamName"] == null) ? "CurrentPage" : (string)ViewState["PageParamName"];
            }

            
set
            {
                ViewState[
"PageParamName"] = value;
            }
        }
        
#endregion

        
#region FirstPageText
        [Category(
"Navigation")]
        [DefaultValue(
"首页")]
        
public string FirstPageText
        {
            
get
            {
                
return (ViewState["FirstPageText"] == null) ? "首页" : (string)ViewState["FirstPageText"];
            }

            
set
            {
                ViewState[
"FirstPageText"] = value;
            }
        }
        
#endregion

        
#region PrePageText
        [Category(
"Navigation")]
        [DefaultValue(
"上一页")]
        
public string PrePageText
        {
            
get
            {
                
return (ViewState["PrePageText"] == null) ? "上一页" : (string)ViewState["PrePageText"];
            }

            
set
            {
                ViewState[
"PrePageText"] = value;
            }
        }
        
#endregion

        
#region NextPageText
        [Category(
"Navigation")]
        [DefaultValue(
"下一页")]
        
public string NextPageText
        {
            
get
            {
                
return (ViewState["NextPageText"] == null) ? "下一页" : (string)ViewState["NextPageText"];
            }

            
set
            {
                ViewState[
"NextPageText"] = value;
            }
        }
        
#endregion

        
#region LastPageText
        [Category(
"Navigation")]
        [DefaultValue(
"末页")]
        
public string LastPageText
        {
            
get
            {
                
return (ViewState["LastPageText"] == null) ? "末页" : (string)ViewState["LastPageText"];
            }

            
set
            {
                ViewState[
"LastPageText"] = value;
            }
        }
        
#endregion
        
#endregion

        
#region Layout(布局)
        
#region Width
        [Category(
"Layout")]
        
public Unit Width
        {
            
get
            {
                
return (ViewState["Width"] == null) ? Unit.Percentage(100) : (Unit)ViewState["Width"];
            }

            
set
            {
                ViewState[
"Width"] = value;
            }
        }
        
#endregion

        
#region Height
        [Category(
"Layout")]
        
public Unit Height
        {
            
get
            {
                
return (ViewState["Height"] == null) ? Unit.Pixel(20) : (Unit)ViewState["Height"];
            }

            
set
            {
                ViewState[
"Height"] = value;
            }
        }
        
#endregion

        
#region CellPadding
        [Category(
"Layout")]
        [DefaultValue(
0)]
        
public int CellPadding
        {
            
get
            {
                
return (ViewState["CellPadding"] == null) ? 0 : (int)ViewState["CellPadding"];
            }

            
set
            {
                ViewState[
"CellPadding"] = value;
            }
        }
        
#endregion

        
#region CellSpacing
        [Category(
"Layout")]
        [DefaultValue(
0)]
        
public int CellSpacing
        {
            
get
            {
                
return (ViewState["CellSpacing"] == null) ? 0 : (int)ViewState["CellSpacing"];
            }

            
set
            {
                ViewState[
"CellSpacing"] = value;
            }
        }
        
#endregion
        
#endregion

        
#region Appearance(外观)
        
#region TableCssClass
        [Category(
"Appearance")]
        
public string TableCssClass
        {
            
get
            {
                
return (ViewState["TableCssClass"] == null) ? string.Empty : (string)ViewState["TableCssClass"];
            }

            
set
            {
                ViewState[
"TableCssClass"] = value;
            }
        }
        
#endregion

        
#region TableCellCssClass
        [Category(
"Appearance")]
        
public string TableCellCssClass
        {
            
get
            {
                
return (ViewState["TableCellCssClass"] == null) ? string.Empty : (string)ViewState["TableCellCssClass"];
            }

            
set
            {
                ViewState[
"TableCellCssClass"] = value;
            }
        }
        
#endregion

        
#region PagerCssClass
        [Category(
"Appearance")]
        
public string PagerCssClass
        {
            
get
            {
                
return (ViewState["PagerCssClass"] == null) ? string.Empty : (string)ViewState["PagerCssClass"];
            }

            
set
            {
                ViewState[
"PagerCssClass"] = value;
            }
        }
        
#endregion
        
#endregion

        
#endregion

        
#region GetPagerUrl
        
private string GetPagerUrl()
        {
            StringBuilder sbUrl 
= new StringBuilder(HttpContext.Current.Request.Path);
            sbUrl.Append(
'?');
            NameValueCollection query 
= HttpContext.Current.Request.QueryString;

            
for(int i = 0; i < query.Count; i++)
            {
                
if(query.GetKey(i) != PageParamName)
                {
                    sbUrl.Append(query.GetKey(i));
                    sbUrl.Append(
'=');
                    sbUrl.Append(HttpContext.Current.Server.UrlEncode(query.Get(i)));
                    sbUrl.Append(
'&');
                }
            }

            sbUrl.Append(PageParamName);
            sbUrl.Append(
'=');
            
return sbUrl.ToString();
        }
        
#endregion

        
#region GetPagerLinks
        
private string[] GetPagerLinks()
        {
            
string[] links = new string[5];
            
int prePage = 1;
            
int nextPage = 1;

            
if(RecordCount > 0)
            {
                
string pagerUrl = this.GetPagerUrl();
                prePage 
= (CurrentPage > 1) ? (CurrentPage - 1) : 1;
                nextPage 
= (CurrentPage + 1 > PageCount) ? PageCount : CurrentPage + 1;
                links[
0] = pagerUrl + "1";
                links[
1] = pagerUrl + prePage.ToString();
                links[
2] = pagerUrl + nextPage.ToString();
                links[
3] = pagerUrl + PageCount.ToString();
                links[
4] = pagerUrl;
                
return links;
            }
            
else
            {
                CurrentPage 
= 0;
            }

            
return links;
        }
        
#endregion

        
#region GetPagerOptions
        
private string GetPagerOptions()
        {
            StringBuilder sb 
= new StringBuilder();

            
for(int i = 1; i <= this.PageCount; i++)
            {
                
if(i == this.CurrentPage)
                {
                    sb.AppendFormat(
"<OPTION value="{0}" selected>{0}</OPTION>", i);
                }
                
else
                {
                    sb.AppendFormat(
"<OPTION value="{0}">{0}</OPTION>", i);
                }
            }

            
return sb.ToString();
        }
        
#endregion

        
#region GetHTML
        
private string GetHTML()
        {
            
string[] links = this.GetPagerLinks();
            StringBuilder sb 
= new StringBuilder();
            sb.AppendFormat(
"<TABLE width="{0}%" height="{1}" cellpadding="{2}" cellspacing="{3}" class="{4}"><TR>", this.Width.Value, this.Height.Value, this.CellPadding, this.CellSpacing, this.TableCssClass);
            sb.AppendFormat(
"<TD align="left" width="100" class="{0}">", this.TableCellCssClass);
            sb.AppendFormat(
"<SPAN>共&nbsp;{0}&nbsp;条数据</SPAN>", this.RecordCount);
            sb.AppendFormat(
"</TD><TD align="center" class="{0}">", this.TableCellCssClass);
            sb.AppendFormat(
"<A class="{0}" href="{1}">{2}</A>&nbsp;", this.PagerCssClass, links[0], this.FirstPageText);
            sb.AppendFormat(
"<A class="{0}" href="{1}">{2}</A>&nbsp;", this.PagerCssClass, links[1], this.PrePageText);
            sb.AppendFormat(
"<A class="{0}" href="{1}">{2}</A>&nbsp;", this.PagerCssClass, links[2], this.NextPageText);
            sb.AppendFormat(
"<A class="{0}" href="{1}">{2}</A>&nbsp;", this.PagerCssClass, links[3], this.LastPageText);
            sb.AppendFormat(
"&nbsp;转到<SELECT onchange="window.location.href='{0}'+this.options[this.selectedIndex].value;">{1}</SELECT>页", links[4], this.GetPagerOptions());
            sb.AppendFormat(
"</TD><TD align="right" class="{0}">第&nbsp;{1}&nbsp;/&nbsp;{2}&nbsp;页</TD>", this.TableCellCssClass, this.CurrentPage, this.PageCount);
            sb.AppendFormat(
"</TR></TABLE>");
            
return sb.ToString();
        }
        
#endregion

        
#region override Render
        
protected override void Render(HtmlTextWriter writer)
        {
            writer.Write(
this.GetHTML());
            
base.Render (writer);
        }
        
#endregion
    }
}
usb 扩容盘检测修复工具源码,编译产物 立即下载

相关推荐

融合UWB和IMU割草机定位EKF研究(Matlab代码实现)

内容概要:本文主要介绍了一个名为“Plecs全桥LLC谐振变换器仿真模型”的技术资源,该资源聚焦于电力电子领域中的LLC谐振变换器建模与仿真,涵盖开环、闭环控制、软启动设计及参数优化等核心内容。文档不仅提供了LLC变换器的详细建模方法与仿真案例,还系统梳理了其在高效电源转换系统中的应用,包括隔离型全桥拓扑结构的设计与性能分析。此外,资源汇总了大量Matlab/Simulink仿真模型及相关科研方向,涉及新能源并网、储能控制、电机驱动等多个前沿领域,全面展示LLC谐振变换器在现代电力系统中的关键技术实现路径。同时,文档附带多种学习资料获取途径,如网盘链接和公众号资源,便于研究人员深入实践与拓展研究。; 适合人群:具备扎实的电力电子、自动控制理论基础,从事新能源发电、开关电源设计、电力系统仿真等相关领域的研究生、工程师及科研人员。; 使用场景及目标:①深入理解LLC谐振变换器的工作原理、建模方法与控制策略;②开展电力电子变换器的仿真验证与参数优化设计;③支撑科研项目、学位论文或工程项目的系统仿真与方案验证; 阅读建议:建议结合所提供的仿真模型与参考文献,使用Plecs或Simulink软件进行动手实践,重点掌握LLC谐振变换器的建模流程、闭环控制设计、软启动机制及参数调试技巧,以全面提升在实际工程中的应用与创新能力。

C#.NET 中的类型转换

C# 出来也有些日子了,最近由于编程的需要,对 C# 的类型转换做了一些研究,其内容涉及 C# 的装箱/拆箱/别名、数值类型间相互转换、字符的 ASCII 码和 Unicode 码、数值字符串和数值之间的转换、字符串和字符数组/字节数组之间的转换、各种数值类型和字节数组之间的转换、十六进制数输出以及日期型数据的一些转换处理,在这里与大家分享—— 1. 装箱、拆箱还是别名 许多 C#.NET 的书上

Poor Eric >_< 4031

基于变频控制的多相交错LLC谐振变换器闭环仿真(Simulink仿真实现)

基于变频控制的多相交错LLC谐振变换器闭环仿真(Simulink仿真实现)内容概要:本文主要介绍了基于Plecs的全桥LLC谐振变换器仿真模型,涵盖变频控制下的多相交错LLC谐振变换器闭环仿真、V2G电动汽车ACDC整流与双向CLLC谐振变换器充放电仿真、LLC谐振变换器的开环与闭环软启动设计,以及储能系统中双向Buck-Boost变换器结合模型预测电流控制和电压下垂控制的仿真研究。同时,文档列举了多种电力电子系统与控制策略的Simulink/Plecs仿真案例,涉及三相交错并联Buck变换器、三电平Buck直流变换器、单相Boost PFC电路等,展示了丰富的电力变换器建模与控制技术。此外,还包括参数设计报告、计算书及相关参考文献,适用于从事电力电子、新能源发电、电动汽车充放电系统等领域的研究人员和技术开发人员。; 适合人群:具备电力电子、自动控制理论基础,从事新能源、电动汽车、电力系统等相关领域研究的研发人员、高校研究生及高年级本科生。; 使用场景及目标:① 学习和掌握LLC谐振变换器及其他典型电力电子变换器的工作原理与建模方法;② 实现闭环控制策略如变频控制、软启动、模型预测控制、下垂控制等的仿真验证;③ 支持科研项目、毕业设计或工程开发中的系统仿真与优化设计。; 阅读建议:建议结合文中提供的仿真模型、设计报告与参考文献,逐步搭建并调试相应系统,重点关注控制策略的实现细节与参数整定过程,以深入理解系统动态响应特性与控制性能。

Eric的超高效数据分页(图示+代码) ^_^

运行截图:数据表结构:megaid int IDENTITY (1, 1) NOT NULL PRIMARY KEY  CLUSTEREDmegaguid char (36) NOT NULL INDEX数据生成脚本:DECLARE @i intSET @i = 1WHILE @i  1000001    BEGIN        INSERT INTO megatable (megagu

Poor Eric >_< 4005

别再只做游戏了!用虚幻引擎5(UE5)给你的工厂车间做个数字双胞胎(附数据对接教程)

本文详细介绍了如何利用虚幻引擎5(UE5)构建工业数字孪生系统,实现工厂车间的智能可视化。通过UE5的高质量渲染和实时数据处理能力,结合OPC UA和MQTT协议,打造高效的数据对接方案,提升异常识别和设备管理效率。文章还分享了模型优化、可视化设计及典型工业场景的实战案例,助力企业迈向工业4.0。

weixin_33738555的博客 206

帆软js--获取控件和单元格

参数面板: 获取面板控件 ,name为控件名称:_g().parameterEl.getWidgetByName("name") 取值:_g().parameterEl.getWidgetByName("tt3").getValue()2323 赋值:_g().parameterEl.getWidgetByName("tt2").setValue("987") 调用对应的事件比...

江湖行骗老中医 7198

Eric的无限级Tree(演示+代码)

Tree管理页面 (代码在前面的文章里。因为ACCESS数据库的限制, 只能支持到63层 -_-, 用SqlServer可以支持到1970多层 够用了吧 ^_^)生成的XML服务器端TreeView  用到的XSL纯客户端TreeView  用到的XSL服务器端TreeView代码:@ Page language="c#" AutoEventWireup="false"%>

Poor Eric >_< 3468

达梦数据守护集群监视器详解与应用指南

主库/备库:承担读写和只读服务的数据节点Redo 日志:记录数据库变更的核心日志Redo 日志传输:主备库间的日志同步机制Redo 日志重演:备库重做日志的应用过程守护进程 (dmwatcher):实例级别的监控和管理组件监视器 (dmmonitor):集群级别的监控和管理工具监视器作为数据守护系统的重要组成部分,提供了集群监控、故障管理和状态确认等关键功能。达梦数据守护集群监视器是维护数据库高可用性的关键工具。

huanhuanzhou blog 1058

Eric的数据分页(演示+代码)

演示地址: Click Me!  分页方法很简单,也很有效率.代码:int pages = 5;    int pageSize = 7;    OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Server.M

Poor Eric >_< 3161

Allegro层叠中的Etch Factor-铜皮的腐蚀因子如何计算

在用Allegro进行PCB设计的时候,Cross-section中需要填入对应的信息,一般填入每层的厚度即可,如下图。当PCB需要进行仿真分析的时候,Etch-Factor这个值是必须要填写的,如下图。实际铜皮进行蚀刻的时候,Etch-Factor的值并不是标准的90度,如下图。线路层实际形状是个梯形,Etch-Factor代表的就是梯形的角度,如下图。首先输入数值,比如1,再点击Inv,最后点击tan-1,可以得到角度的值。如果tanσ=2,σ=63.4,如下图计算结果。即tanσ=1,得到σ=45。

weixin_54787054的博客 885

docker-compose Install OrangeHRM

OrangeHRM是一个全面的人力资源管理HRM) 系统,它包含任何企业所需的所有基本功能。OrangeHRM旨在支持任何规模的团队,包括初创企业、中小企业以及大型跨国组织。

极致,细节 1005

分页关键DbDataAdapter.Fill(DataSet, int startRecord, int maxRecords)

使用 DataSet 和源表名称、命令字符串以及命令行为,在 DataSet 的指定范围中添加或刷新某些行以使它们与数据源中对应的行相一致。protected virtual int Fill( DataSet dataSet, int startRecord, int maxRecords, string srcTable, IDbCommand command,

Poor Eric >_< 2792

【腾讯小龙虾WorkBuddy专栏01】初识WorkBuddy!定位、核心优势、功能界面全解析

【腾讯小龙虾WorkBuddy专栏01】初识WorkBuddy!定位、核心优势、功能界面全解析

AI人人懂 3851

用于下载HTML中远程图片的方法

 using System;using System.Collections.Generic;using System.Text.RegularExpressions;using System.Net;using System.IO;namespace EFPlatform.Common.Helper...{    public class WebRequestHelper    ...{

Poor Eric >_< 2475

YOLOv8有效涨点,增强型 YOLOV8 与多尺度注意力机制特征融合,附代码,详细步骤

在本实验中,我们通过将双层路由注意(BRA)、广义特征金字塔网络(GFPN)和第四检测头结合到YOLOv8中,开发了一种新颖的BGF-YOLO架构。BGF-YOLO 包含注意力机制,可以更多地关注重要特征,特征金字塔网络可以通过将高级语义特征与空间细节合并来丰富特征表示。此外,我们研究了不同的注意力机制和特征融合、检测头架构对检测准确性的影响。实验结果表明,与YOLOv8x相比,BGF-YOLO的mAP50增加了4.7%。

kay_545 3048

【DRAM存储器六十六】DDR5介绍--训练相关之CA/CS Training

详述DDR5 CA/CS training过程细节

highman110的博客 199

配置Openware模拟器

如果要在本机测试 .NET Mobile 程序,你需要手动设置Openware模拟器, 否则当Openware触发一个post方法时后得到 Error: Mailformed Server Response 错误提示Openware SDK 配置方法:1. 选择 Tools - > Options2. 选择 Server 选项卡3. 点击 Add 按钮, 使用Http Direct连接,  建

Poor Eric >_< 2209

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Eric的日期选择下拉列表小控件

利用JS实现日期选择功能,包括润年2月的日数变更, 简单实用!主要属性: Date设计时图示:  源代码: using System;using System.ComponentModel;using System.Text;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;[assembly: Tag

Poor Eric >_< 2186

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

在 Microsoft Visual Studio .NET 中集成 Openwave 模拟器

摘要:本文介绍在开发过程中,如何在 Visual Studio .NET 环境中使用 Openwave 模拟器来测试移动应用程序。 适用于:ASP.NET 移动控件(原名 Microsoft Mobile Internet Toolkit)。本文包含英文的屏幕拍图。 目录 要求 在 Visual Studio .NET 中集成 Openwave 模拟器 使用 Openwave 模拟器进行测试

Poor Eric >_< 2148

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Eric的使用XMLHTTP从服务端取得数据演示

使用XMLHTTP从服务端取得数据在服务器直接使用Request.Form取值, 不需要另外解码编的, 无中文显示问题适用于所有CGI服务端服务端代码: ASP.NET with C# 版, 改成其它版本很容易, 我就不浪费时间了:]@ Page Language="C#" %>string result = "";for(int i = 0; i  Request.Form.Count; i++

Poor Eric >_< 1988

简单无限级树 HTML代码

@ Page language="c#" %>@ Import namespace="System.Data" %>@ Import namespace="System.Data.OleDb" %>@ Import namespace="System.Text" %>数据表: [tree]字段1: [treeid] 自动编号/主键字段2: [treetitle] 文本 长度50字段3: [tr

Poor Eric >_< 1961

DataGrid 示例

@ Page Language="C#"%>@ Import Namespace="System.Data" %>@ Import Namespace="System.Data.SqlClient" %>HTML> HEAD>  TITLE>1TITLE>  SCRIPT language="C#" runat="server">  private void Page_Load(objec

Poor Eric >_< 1960

简单无限级树 C#代码

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.WebCon

Poor Eric >_< 1884

简单无限级树 生成XML代码

????????private?void?makeXml(string?xmlPath)????????{????????????string?sqlStr?=?"SELECT?*?FROM?tree?ORDER?BY?treenode";????????????OleDbDataAdapter?da?=?new?OleDbDataAdapter(sqlStr,?conn);?????????

Poor Eric >_< 1865
上一篇: VSS的配置和使用
下一篇: Eric的日期选择下拉列表小控件
可爱的排骨
博客等级 码龄25年 13粉丝 47原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值