发布分页控件源代码--组合控件

Screenshot_2026-11-03-16-23-09-34.jpg 立即下载

using System;
using System.IO;
using System.Drawing;
using System.Data;
using System.Data.SqlClient;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.ComponentModel;

namespace Pager
{
 /// <summary>
 /// coolPager 的摘要说明。
 /// </summary>
 public enum SortType
 {
  ASC=0,Desc=1
 };
 public enum IsCount
 {
  noReturnRecordCount=0,returnRecordCount
 };
 [DefaultProperty("copyRight"),
  ToolboxData("<{0}:coolPager runat=server></{0}:coolPager>")]
 public class coolPager : System.Web.UI.WebControls.WebControl,INamingContainer
 { 
  protected int recordCount=0;
  protected Control _controlToPaginate;
  protected PagedDataSource _dataSource;

  [Bindable(true),
   Category("Appearance"),
   DefaultValue("")]
  public string copyRight
  {
   get
   {
    return "版权所有:千山一鸟";
   }
  }
  //连接字符串
  [Description("数据源连接字符串"),DefaultValue("")]
  public string connectionString
  {
   get
   {
    object obj = ViewState["connectionString"];
    return (obj==null)?String.Empty:obj.ToString();
   }
   set
   {
    ViewState["connectionString"]=value;
   }
  }
  //显示分页的控件
  [Description("用于显示分页的控件"),DefaultValue("")]
  public string controlToPaginate
  {
   get
   {
    object obj=ViewState["controlToPaginate"];
    return (obj==null)?String.Empty:obj.ToString();
   }
   set
   {
    ViewState["controlToPaginate"]=value;
   }
  }
  //表名
  [Description("查询表名"),DefaultValue("")]
  public string tableName
  {
   get
   {
    Object obj=ViewState["tableName"];
    return (obj==null)?String.Empty:obj.ToString();
   }
   set
   {
    ViewState["tableName"]=value;
   }
  }
  //排序字段名
  [Description("排序字段"),DefaultValue("")]
  public string fieldName
  {
   get
   {
    Object obj=ViewState["fieldName"];
    return (obj==null)?String.Empty:obj.ToString();
   }
   set
   {
    ViewState["fieldName"]=value;
   }
  }
  //每页显示记录数
  [Description("每页记录数"),DefaultValue("")]
  public int pageSize
  {
   get
   {
    Object obj=ViewState["pageSize"];
    return (obj==null)?15:Convert.ToInt32(obj);
   }
   set
   {
    ViewState["pageSize"]=value;
   }
  }
  //页码
  [Description("当前页码"),DefaultValue("")]
  public int pageIndex
  {
   get
   {
    Object obj=ViewState["pageIndex"];
    return (obj==null)?1:Convert.ToInt32(obj);
   }
   set
   {
    ViewState["pageIndex"]=value;
   }
  }
  //是否返回记录总数
  [Description("是否返回记录总数"),DefaultValue("")]
  public IsCount isCount
  {
   get
   {
    return IsCount.returnRecordCount;
   }
  }
  //排序类型
  [Description("排序类型"),DefaultValue("")]
  public SortType sortType
  {
   get
   {
    Object obj=ViewState["sortType"];
    return (obj==null)?SortType.ASC:(SortType)obj;
   }
   set
   {
    ViewState["sortType"]=value;
   }
  }
  //Where子句
  [Description("where子句,不带where"),DefaultValue("")]
  public string Where
  {
   get
   {
    Object obj=ViewState["Where"];
    return (obj==null)?String.Empty:obj.ToString();
   }
   set
   {
    ViewState["Where"]=value;
   }
  }
  [Description("显示导航数字数"),DefaultValue("")]
  public int showPageNumber
  {
   get
   {
    Object obj=ViewState["showPageNumber"];
    return (obj==null)?10:Convert.ToInt32(obj);
   }
   set
   {
    ViewState["showPageNumber"]=value;
   }
  }
  [Description("开始页"),DefaultValue("")]
  public int pageStart
  {
   get
   {
    Object obj=ViewState["pageStart"];
    return (obj==null)?1:Convert.ToInt32(obj);
   }
   set
   {
    ViewState["pageStart"]=value;
   }
  }
  [Description("总页数,自动生成"),DefaultValue("")]
  public int pageCount
  {
   get
   {
    Object obj=ViewState["pageCount"];
    return (obj==null)?1:Convert.ToInt32(obj);
   }
   set
   {
    ViewState["pageCount"]=value;
   }
  }

  /// <summary>
  /// 将此控件呈现给指定的输出参数。
  /// </summary>
  /// <param name="output"> 要写出到的 HTML 编写器 </param>
  protected override void Render(HtmlTextWriter output)
  {
   if(Page.EnableViewState==false)
    Page.EnableViewState=true;
   if(Site!=null && Site.DesignMode)
    if(!Page.IsPostBack)
    CreateChildControls();
   base.Render(output);
  }
  public override void DataBind()
  {
   base.DataBind();

   ChildControlsCreated = false;

   if (controlToPaginate == "")
    return;
   _controlToPaginate = Page.FindControl(controlToPaginate);
   if (_controlToPaginate == null)
    return;
   if (!(_controlToPaginate is BaseDataList || _controlToPaginate is ListControl))
    return;

   if (connectionString == "" || tableName == "")
    return;

   // Fetch data
   FetchData();

   // Bind data to the buddy control
   BaseDataList baseDataListControl = null;
   ListControl listControl = null;
   if (_controlToPaginate is BaseDataList)
   {
    baseDataListControl = (BaseDataList) _controlToPaginate;
    baseDataListControl.DataSource = _dataSource;
    baseDataListControl.DataBind();
    return;
   }
   if (_controlToPaginate is ListControl)
   {
    listControl = (ListControl) _controlToPaginate;
    listControl.Items.Clear();
    listControl.DataSource = _dataSource;
    listControl.DataBind();
    return;
   }
  }
  private void FetchData()
  {
   SqlConnection cn=new SqlConnection(connectionString);
   SqlCommand cm=new SqlCommand();
   cm.Connection=cn;
   cm.Connection.Open();

   cm.CommandText="GetRecordFromPage";
   cm.CommandType=CommandType.StoredProcedure;
   cm.Parameters.Add("@tblName",SqlDbType.NVarChar,255);
   cm.Parameters.Add("@fldName",SqlDbType.NVarChar,255);
   cm.Parameters.Add("@PageSize",SqlDbType.Int);
   cm.Parameters.Add("@PageIndex",SqlDbType.Int);
   cm.Parameters.Add("@isCount",SqlDbType.Bit);
   cm.Parameters.Add("@OrderType",SqlDbType.Bit);
   cm.Parameters.Add("@strWhere",SqlDbType.NVarChar,1000);
   cm.Parameters["@tblName"].Value=tableName;
   cm.Parameters["@fldName"].Value=fieldName;
   cm.Parameters["@PageSize"].Value=pageSize;
   cm.Parameters["@PageIndex"].Value=pageIndex;
   cm.Parameters["@isCount"].Value=0;
   cm.Parameters["@OrderType"].Value=sortType;
   cm.Parameters["@strWhere"].Value=Where;

   SqlDataAdapter adapter = new SqlDataAdapter(cm);
   DataTable dtb = new DataTable();
   adapter.Fill(dtb);

   cm.Parameters["@isCount"].Value=isCount;
   recordCount=(int)cm.ExecuteScalar();
   pageCount=(int)Math.Ceiling((double)recordCount/pageSize);

   cm.Connection.Close();
   cm.Dispose();
   cn.Dispose();
   adapter.Dispose();

   // Configures the paged data source component
   if (_dataSource == null)
    _dataSource = new PagedDataSource();
   _dataSource.AllowCustomPaging = true;
   _dataSource.AllowPaging = true;
   _dataSource.CurrentPageIndex = 0;
   if(pageIndex==pageCount)
   {
    _dataSource.PageSize = (recordCount-(pageIndex-1)*pageSize);
   }
   else
   {
    _dataSource.PageSize = pageSize;
   }
   if(pageIndex==pageCount)
   {
    _dataSource.VirtualCount = (recordCount-(pageIndex-1)*pageSize);
   }
   else
   {
    _dataSource.VirtualCount = pageSize;
   }
   _dataSource.DataSource = dtb.DefaultView;
  }
  protected override void CreateChildControls()
  {
   Controls.Clear();
   if(!Page.IsPostBack)
   {
    ClearChildViewState();
   }

   //***********************************************
   Table table=new Table();
   table.Width=Unit.Percentage(100);
   table.CellPadding=0;
   table.CellSpacing=3;
   table.BorderWidth=0;
   table.Font.Size=FontUnit.Point(9);

   TableRow tr=new TableRow();

   TableCell tdInfo=new TableCell();
   tdInfo.Width=Unit.Percentage(25);
   tdInfo.HorizontalAlign=HorizontalAlign.Left;
   BuildInfo(tdInfo);
   tr.Cells.Add(tdInfo);

   TableCell tdNavigate=new TableCell();
   tdNavigate.Width=Unit.Percentage(50);
   tdNavigate.HorizontalAlign=HorizontalAlign.Center;
   BuildNavigator(tdNavigate);
   tr.Cells.Add(tdNavigate);

   TableCell tdGOTO=new TableCell();
   tdGOTO.Width=Unit.Percentage(25);
   tdGOTO.HorizontalAlign=HorizontalAlign.Right;
   BuildGOTO(tdGOTO);
   tr.Cells.Add(tdGOTO);

   table.Rows.Add(tr);
   Controls.Add(table);
  }
  private void BuildInfo(TableCell td)
  {
   LiteralControl lc=new LiteralControl();
   lc.Text="页码:"+pageIndex.ToString()+"|"+pageCount.ToString()+" 记录:"+((pageIndex-1)*pageSize+1)+"-"+((recordCount<pageSize)?recordCount:((pageIndex==pageCount)?recordCount:pageIndex*pageSize))+"|"+recordCount;
   td.Controls.Add(lc);
  }
  private void BuildNavigator(TableCell td)
  {
   int temp;
   if(pageIndex>showPageNumber)
   {
    LinkButton lbBack=new LinkButton();
    lbBack.CausesValidation=false;
    lbBack.Text="...";
    lbBack.CommandArgument="Back";
    lbBack.Command +=new CommandEventHandler(lb_Click);
    td.Controls.Add(lbBack);
    td.Controls.Add(new LiteralControl("&nbsp;"));
   }
   //*************************
   for(int i=0;i<showPageNumber;i++)
   {
    if((pageStart+i)<=pageCount)
    {
     temp=pageStart+i;
     LinkButton lbNumber=new LinkButton();
     lbNumber.CausesValidation=false;
     lbNumber.Text=temp.ToString();
     lbNumber.CommandArgument=temp.ToString();
     lbNumber.Command +=new CommandEventHandler(lbNumber_Click);
     td.Controls.Add(lbNumber);
     td.Controls.Add(new LiteralControl("&nbsp;"));
    }
   }
   if((pageCount-pageStart)>showPageNumber)
   {
    LinkButton lbForward=new LinkButton();
    lbForward.CausesValidation=false;
    lbForward.Text="...";
    lbForward.CommandArgument="Forward";
    lbForward.Command +=new CommandEventHandler(lb_Click);
    td.Controls.Add(lbForward);
   }
  }
  private void BuildGOTO(TableCell td)
  {
   TextBox tb=new TextBox();
   tb.ID="gotoPage";
   tb.BorderWidth=Unit.Pixel(1);
   tb.Width=Unit.Pixel(30);
   tb.EnableViewState=true;
   td.Controls.Add(tb);

   LiteralControl lc=new LiteralControl("&nbsp;");
   td.Controls.Add(lc);

   Button btn=new Button();
   btn.Text="GOTO";
   btn.CommandArgument=tb.ClientID;
   btn.Command +=new CommandEventHandler(lb_Click);
   td.Controls.Add(btn);

   RequiredFieldValidator val2=new RequiredFieldValidator();
   val2.ControlToValidate="gotoPage";
   val2.ErrorMessage="页码不能为空!";
   val2.Display=ValidatorDisplay.None;
   val2.ID="val2";
   td.Controls.Add(val2);

   RangeValidator val1=new RangeValidator();
   val1.Display=ValidatorDisplay.None;
   val1.ErrorMessage="无效的页码!";
   val1.ID="val1";
   val1.ControlToValidate="gotoPage";
   val1.Type=ValidationDataType.Integer;
   val1.MinimumValue="1";
   if(pageCount<1)
   {
    val1.MaximumValue="1";
   }
   else
   {
    val1.MaximumValue=pageCount.ToString();
   }
   
   td.Controls.Add(val1);

   ValidationSummary valAll=new ValidationSummary();
   valAll.ShowMessageBox=true;
   valAll.ShowSummary=false;
   td.Controls.Add(valAll);
  }
  private void lb_Click(Object Sender,CommandEventArgs e)
  {
   switch(e.CommandArgument.ToString())
   {
    case "Back":
     pageStart-=showPageNumber;
     pageIndex=pageStart;
     CreateChildControls();
     break;
    case "Forward":
     pageStart+=showPageNumber;
     pageIndex=pageStart;
     CreateChildControls();
     break;
    default:
     //TextBox tb=(TextBox)Parent.FindControl("CoolPager1:gotoPage");
        //pageIndex=Convert.ToInt32(tb.Text);
     string temp=Page.Request.Form[this.ClientID+":gotoPage"].ToString().Trim();
     try
     {
      pageIndex=Convert.ToInt32(temp);
      if(pageIndex % showPageNumber==0)
      {
       pageStart=pageIndex+1-showPageNumber;
      }
      else
      {
       pageStart=(int)Math.Floor((double)pageIndex/showPageNumber)*showPageNumber+1;
      }
      CreateChildControls();
     }
     catch
     {
     }
     break;
   }
   DataBind();
  }
  private void lbNumber_Click(Object Sender,CommandEventArgs e)
  {
   pageIndex=Convert.ToInt32(e.CommandArgument);
   DataBind();
  }
 }
}

研发流程后端开发工具,提示功能开发效率 后端开发工具 立即下载

相关推荐

机器人具有扰动抑制功能的有限时间基于方位角的领航者-跟随者编队控制(Matlab代码实现)

内容概要:本文档标题为《Plecs全桥LLC谐振变换器仿真模型.txt》,但实际内容并未涉及该主题的具体技术细节或仿真建模过程。相反,文档实质是一份由科研服务团队发布的跨学科资源目录,集中展示了大量基于Matlab、Simulink、Python、PSCAD等平台实现的科研项目与算法开发案例,涵盖电力系统、无人机路径规划、微电网优化、状态估计、信号处理、车间调度、图像处理、通信技术、雷达追踪、智能优化算法等多个工程技术领域。每个条目以“【】”标注研究主题,并注明“Matlab代码实现”“Python代码实现”等形式,表明其为可提供技术支持与代码资源的服务项目。文档末尾频繁出现“完整资源下载:公众号——荔枝科研社”及百度网盘链接,明确体现出其作为科研辅助服务推广与引流工具的功能属性。; 适合人群:面向电气工程、自动化、控制科学与工程、计算机科学、智能制造、新能源、航空航天、通信工程及相关交叉学科的研究生、高校教师、科研人员及企业研发工程师。; 使用场景及目标:①为科研人员提供课题选题、技术路线设计与算法实现的参考范例;②辅助学生或研究人员完成课程设计、毕业论文、项目仿真与算法复现任务;③作为第三方技术服务团队的能力展示目录,便于潜在客户快速了解其在多领域提供的定制化仿真与算法开发服务范围。; 阅读建议:此文档并非传统意义上的学术论文或技术教程,而是一份高度碎片化、广告性质浓厚的资源索引清单。读者应忽略其误导性的文件名,将其视为一个综合性科研技术服务目录,重点关注自身研究方向相关的条目,并通过文末提供的公众号或网盘链接进一步获取具体代码与资料。同时,需注意甄别资源的技术质量、原创性与适用性,避免盲目依赖外部服务。

GRASP(通用职责分配软件模式)介绍及一些小经验

通用职责分配软件模式(GRASP)侧重于基本的通用设计过程,是针对FURPS+需求模型中的Functional(功能性)的重要的设计原则。 GoF设计模式更注重FURPS+需求模型中的质量需求的设计。 可以在GoF设计模式中找到GRASP的影子。个人的一点小经验:1、解决接口变化的外部服务问题时使用“适配器模式2、解决变化的算法及策略问题时(客户定制业务规则)使用“策略模式(将不同算法定义为实现同

千山一鸟的文章 3167

科技中介服务机构如何打造高效、可复制的技术交易服务流程?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

浅谈无刷新取得远程数据技术

刷新技术经历了大致几个阶段:一、在HTML文件头里增加一个键,使该页面在设定的时间后跳转到指定的页面(包括自身);例如:二、使用框架然后在JS脚本里定时刷新框架内容。上面两种方式都会重新加载页面,即刷新,给人的感觉不是很好!于是无刷新技术出现了。三、是对第二种方式的一种变通。即将众多框架中的一个长宽设置为0,使其不可见,然后通过脚本定时刷新该隐藏框架内容,再将该框架内容

千山一鸟的文章 3017

高校技术转移办公室人员如何提升科研成果的市场推广与转化成功率?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

GPS从入门到放弃(一) --- GPS基础原理

GPS从入门到放弃(一) — GPS基础原理 GPS,全称Global Positioning System,已经广泛应用于我们的日常生活中了,现在的智能手机 里都会自带GPS定位功能。这是一个美国的全球定位系统,虽然我们现在也有北斗了,但毕竟GPS搞的早,所以先从它开始研究起。 整个GPS系统分三大部分: 地面站 卫星 接收机 地面站负责监控。它们通过接收、测量各个卫星信号,计算卫星的运行轨...

tyst08的专栏 2万+

提供两种散列加密算法:MD5、SHA1。大小写敏感

我以为这个是大家都知道的所以没发出来,那天有网友问起我才觉得很多入门者其实是需要的。发出来给入门者看。 //原来写在一个webservice里所以有后面的者一串[WebMethod(Description="提供两种散列加密算法:MD5、SHA1。大小写敏感。")]  public string EncryptPassword(string PasswordString,string Passwo

千山一鸟的文章 2884

OMNeT++入门指南:从tictoc1到tictoc18的实例解析与实战演练

本文是OMNeT++网络仿真框架的入门实战指南,详细解析了从tictoc1到tictoc18的经典示例。内容涵盖OMNeT++的下载安装、核心三文件(.ned, .cc, .ini)的编写、模块化建模、自定义消息、数据统计与可视化,以及参数化批量仿真等核心技能,帮助读者从零开始掌握这一强大的网络仿真工具。

weixin_29228781的博客 329

关于ViewState的使用

在写控件的时候要用到很多的ViewState来保存状态,例如:public String currentPageIndex{get{return ViewState[“currentPageIndex“].ToString();}set{ViewState[“currentPageIndex“]=value;}}很多教程上使用以上的写法,在实际应用时会出现错误,

千山一鸟的文章 2637

【视频】GStreamer+WebRTC(九):使用NVIDIA硬编解码

2)下载 GStreamer-bad 插件包源码注意要下载和 GStreamer版本对应的插件包3)下载NVIDIA硬编解码SDK最新的SDK下载地址注意 GStreamer 1.24.2 中调用的 NVIDIA Video_Codec_SDK 不是最新的,先使用下面的方法,查看gst-plugins-bad-1.24.2.tar.xz 对应的NVIDIA Video_Codec_SDK 的版本是多少。

郭老二 263

基于MATLAB的脑功能网络工具箱:BCT与FCLab

脑功能网络分析是神经科学领域的一个重要研究方向,它通过分析大脑中神经元之间的连接模式和信息传递方式,揭示脑网络的结构和功能。在这个领域,MATLAB是一个广泛使用的工具,提供了丰富的函数和工具箱来进行脑功能网络的分析和可视化。这些工具箱提供了丰富的函数和工具,使得脑功能网络的计算和分析变得更加简单和高效。在上述示例代码中,我们首先导入BCT工具箱,并构建一个邻接矩阵来表示脑网络的连接关系。在上述示例代码中,我们首先导入FCLab工具箱,并导入脑功能数据。函数对数据进行预处理,如去除噪声、降采样等操作。

web_bug407的博客 2611

使用WebClient实现下载

截图using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;using System.IO;using System.Net;using System.Threading;namespace

千山一鸟的文章 2168

强化学习实战——OpenAI Gym环境配置+实战演示(win10)

遇到问题:无法安装pickle5原因是:python3.8与该包不兼容,必须降python3.7的版本。

LZL2020LZL的博客 4899

领域驱动设计----------之Praise for Domain-Driven Design

关于领域驱动设计的称赞“这本书适合每一个有思想的开发者的书架” --Kent Beck“Eric Evans 曾经写过一本奇异的书,关于怎样使你的软件设计符合你想象的所选择问题领域的模型”。“他的书非常适合极限编程。它不是关于怎样画领域图的;而是关于怎样思考领域,是你习惯于思考领域的语言,和怎样组织你的软件以反映你对领域更进一步的理解。Eric认为在项目结束的时候可能发生对问题领域的认识,

千山一鸟的文章 2094

RAG系统中Embedding模型选型实战

本文详细介绍了RAG系统中Embedding模型选型实战,希望能对学习RAG的同学们有所帮助。 文章目录 1. 前言 2. 思路解析 3. 测评数据集构建 3.1 步骤一 3.2 步骤二 3.3 数据示例 3.4 总结 4. 实战代码 4.1 本地模型 4.2 使用第三方的Embedding模型API

herosunly的博客 17万+

拆开它的“身体”,看懂割草机器人的五层系统架构

这篇文章深入解析了智能割草机器人的五层系统架构。机械层采用铝合金一体式车架和独立悬挂刀盘系统;电子层配备双处理器和多种传感器;固件层实现毫秒级安全响应;算法层融合多种定位技术实现厘米级精度;云服务层提供远程管理和AI优化。这套系统通过精密协同实现了智能割草的全流程闭环,展现了从机械结构到云端智能的完整技术栈,为户外智能设备设立了新的技术标杆。

智能硬件研发,欢迎交流 198

宿主程序为windows服务的remoting

 remoting一般宿主在windows服务里.新建一个windows服务,在OnStart方法里写入如下代码:  protected override void OnStart(string[] args)  {   // TODO: 在此处添加代码以启动服务。   EventLog myLog=new EventLog();   myLog.Source="MonthListService"

千山一鸟的文章 2031

乐企归集能力说明文档V2.0006

纳税人销售货物、提供服务开具的增值税发票及购进货物、接受服务取得的增值税发票、海关缴款书(含出口转内销证明)、代扣代缴完税凭证,可以通过本能力进行归集。纳税人可将本能力中的各类规则和接口嵌入本单位信息化系统中(如:销售、报销、财务等),实现发票自动化归集,便于纳税人完成发票入账、抵扣、退税以及代办退税等操作,有效提升涉税业务办理效率。

记录点滴 573

搜索硬盘的程序

using System;using System.IO;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;using System.Management;using System.Threading;na

千山一鸟的文章 2017

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

使用WebClient实现文件上传

using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;using System.IO;using System.Net;using System.Threading;namespace

千山一鸟的文章 1919

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

领域驱动设计-------Copyright

版权许多标志被生产商和销售商用于辨别他们的产品像商标一样被要求权利。那些标志出现在本书的某些地方,或者Addison-Wesley已经意识到商标权利,这些标志已经被印刷成首字母大写或者全部大写。作者和出版商尽管已经小心准备此书,但是没有表达或者隐含的担保任何性质的错误和忽略并担负相关责任。没有义务承付偶然的或者间接的损害,这些损害与使用包含于本书的信息或者程序有关或起因于此。信用证照片

千山一鸟的文章 1862

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

发布一个.net探针

未经说明,本blog.youkuaiyun.com/wind7788均为本人原创代码,凡是引用或者应用请注明出处,表示对作者的尊重.以下代码主要使用了NameValueCollection来存储信息,用HtmlTable来显示信息.以方便扩展.你也可以用xml来存储要刺探的项目,这样更有利于扩充.using System;using System.Collections;using System.Co

千山一鸟的文章 1835

将复合控件子控件事件上传到顶层的例子

这是一个选择省份然后将点击事件上传到控件顶层在页面处理事件的一个例子。加粗部分是整个上传事件过程。上传事件(暴露事件)、暴露属性、复杂属性管理、样式管理等是asp.net服务器自定义控件的高级主题。using System;using System.Web;using System.Web.UI;using System.Data;using System.Data.SqlClient;using

千山一鸟的文章 1790

一个分页跟动态创建列的控件

using System;using System.Web;using System.IO;using System.Drawing;using System.Data;using System.Data.SqlClient;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;us

千山一鸟的文章 1331

一般要求下的页面打印

           要分开打印的内容用Table圈定,要分页的时候可用一个标签标记

千山一鸟的文章 1166
上一篇: 浅谈无刷新取得远程数据技术
下一篇: 一般要求下的页面打印
wind7788
博客等级 码龄22年 4粉丝 29原创
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值