创建了一个自定义控件 singleControl.ascx

View Code

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.UI; 6 using System.Web.UI.WebControls; 7 using System.Data; 8  9 public partial class Controls_singleControl : System.Web.UI.UserControl10 {11 12     private string ChapterName="";13     private DataSet ds = null;14 15     public string chaptername16     {17         get18         { 19             return ChapterName; 20         }21         set22         { 23             ChapterName = value;24             25         }26 27     }28 29     public DataSet DS30     {31         get32         {33             return ds;34         }35         set36         {37             ds = value;38             40         }41     }42 43     protected void Page_Load(object sender, EventArgs e)44     {45 46         Label24.Text = ChapterName;47         SPGridView.DataSource = ds;48         SPGridView.DataBind();49 50     }51 }

创建一个传值页面 UserTest.aspx

页面代码必须将自定义控件加载进来:<%@ Register src="../Controls/singleControl.ascx" tagname="singleControl" tagprefix="uc1" %>

然后我放置了一个容器  <asp:Panel ID="Panel1" runat="server"></asp:Panel>
然后写代码(我使用了存储过程 只要看第31~34行代码即可):

View Code

 1  private void lable() 2     { 3         //根据试卷ID获取课程编号 4         SqlParameter[] Params1 = new SqlParameter[1]; 5         DataBase dbA = new DataBase(); 6         Params1[0] = dbA.MakeInParam("@paperid", SqlDbType.Int, 4, HidPaperID.Value); 7         DataSet ds = dbA.GetDataSet("Proc_GetCourseID",Params1); 8         int CourseID = int.Parse(ds.Tables[0].Rows[0]["CourseID"].ToString()); 9 10         //根据课程编号获取该课程的章节内容11         SqlParameter[] Params3 = new SqlParameter[1];12         DataBase dbB = new DataBase();13         Params3[0] = dbB.MakeInParam("@courseid", SqlDbType.Int, 4, CourseID);14         DataSet ds3 = dbB.GetDataSet("Proc_GetChapterNameByCourseID", Params3);15 16         foreach (DataRow row in ds3.Tables[0].Rows)17         {18           19             20  21             SqlParameter[] Params5 = new SqlParameter[4];22             DataBase dbC = new DataBase();23             Params5[0] = dbC.MakeInParam("@userid", SqlDbType.VarChar, 50, HidUserID.Value);24             Params5[1] = dbC.MakeInParam("@paperid", SqlDbType.Int, 4, HidPaperID.Value);25             Params5[2] = dbC.MakeInParam("@ChapterID", SqlDbType.VarChar, 50, int.Parse(row["chapterid"].ToString()));26             Params5[3] = dbC.MakeInParam("@CourseID", SqlDbType.Int, 4, CourseID);27             DataSet dset = dbC.GetDataSet("Proc_SingleProblemExminationListByChapterID", Params5);28 29             if (dset.Tables[0].Rows.Count > 0)30             {31                 ASP.controls_singlecontrol_ascx uc = new ASP.controls_singlecontrol_ascx();//加载用户定义控件32                 uc.chaptername = row["chaptername"].ToString(); 33                 uc.DS = dset;34                 Panel1.Controls.Add(uc);35             }36             37         }38     39     }

转载于:https://www.cnblogs.com/panan/archive/2011/11/30/2268575.html

asp.net添加自定义用户控件并传值相关推荐

  1. VS2008 Tips #008 如何创建ASP.NET Web 用户控件并包含在Web 页面中

    在 Visual Web Developer 中创建 ASP.NET Web 用户控件就像 ASP.NET Page 页面一样简单. 以下是创建步骤: 1.打开您想添加用户控件的站点. 2.右键点击站 ...

  2. ASP.NET的用户控件

    本文介绍如何在ASP.NET中创建用户控件,控件属性的动态修改以及控件的事件出发机制. 简介 ASP.NET的服务端控件使得Web开发工作变得更为简单,功能更为强大.我们介绍过如何在ASP.NET页面 ...

  3. ASP.NET Web用户控件

    用户控件可用来实现页面中可重用的代码,是可以一次编写就多处方便使用的功能块.它们是 ASP.NET控件封装最简单的形式.由于它们最简单,因此创建和使用它们也是最简单的.用户控件实际上是把已有的服务器控 ...

  4. asp.net引用用户控件

    页面上直接引用 <%@ Register TagPrefix="scott" TagName="header" Src="Controls/He ...

  5. asp.net读取用户控件,自定义加载用户控件

    1.自定义加载用户控件 ceshi.aspx页面 <html><body> <div id="divControls" runat="ser ...

  6. (八)ASP.NET自定义用户控件(1)

    http://blog.csdn.net/laodao1/article/details/5897366 ASP.NET自定义控件组件开发 第一章:从一个简单的控件谈起 起始开发ASP.NET自定义控 ...

  7. [导入]将asp.net usercontrol(用户控件页)转变为普通控件

    摘要:   阅读全文 张荣华 2007-12-27 09:01 发表评论 [小组]  [博问]  [闪存] 文章来源:http://www.cnblogs.com/zhangronghua/archi ...

  8. ASP.NET重用代码技术 - 用户控件技术

    作者: 苏红超 使用ASP.NET中的代码绑定技术来使得代码重用变得简单可行.我们发现,利用代码绑定技术我们可以容易的将我们的代码和内容分离开来,利用它可以建立可重用的代码,只是这种技术本身也存在着一 ...

  9. 用户控件的后台代码关联使用CodeBehind还是CodeFile

    在vs2005做asp.net的用户控件的时候,vs自动生成的第一行文字是<%@ Control Language="C#" AutoEventWireup="tr ...

最新文章

  1. 06_Dart异常处理
  2. iOS开发tips总结
  3. Altiris 7.1 远程
  4. vim配置文件~/.vimrc
  5. 模板模式(部分方法延迟到子类实现)
  6. HTML5 CSS选择器总结(强烈推荐)
  7. 移动端机器学习模型压缩也自动化了:腾讯新框架为自家模型加速50%
  8. Scala下载安装和环境变量配置
  9. 矩阵理论及其应用课后习题作业:第三章 第四章
  10. 数学分析(1):集合相关公式的证明
  11. 二工大计算机专业,两电一邮与哈工大:计算机专业哪所实力最强?看完就知道...
  12. 小程序 身份认证服务器,如何实现微信小程序与.net core应用服务端的无状态身份验证...
  13. spring restTemplate的坑----会对String类型的url中的特殊字符进行转义
  14. usb设备检测linux,Linux下USB设备检测全教程(转)
  15. 数据的相似性和相异性的度量
  16. python核心编程-Amy老师第十二讲作业内容
  17. 学生HTML个人网页作业作品 HTML+CSS校园环保(大学生环保网页设计与实现)
  18. VisualStudio2005简体中文版 下载地址
  19. 一个模型,帮你提升行动力
  20. Android手机遥控器解决方案

热门文章

  1. lamp 配置mysql_LAMP安装配置超详细讲解
  2. 找不到php fpm.pid,找不到文件nginx php-fpm
  3. 1996.游戏中的弱角色的数量
  4. linux shell和配置文件的执行顺序
  5. 自定义编程移植的加密芯片
  6. 智能一代云平台(四):15年上半年维护过程中精彩小插曲
  7. 腾讯优图×厦大联队夺冠全球AI医疗大赛!刷新肝脏肿瘤影像分割世界纪录
  8. AI芯片浮出新玩家OURS,来者何人?新晋图灵奖得主华人弟子谭章熹
  9. 终于出手!谷歌母公司旗下GV风投首次投资AI芯片创业公司
  10. AI大牛Jerry Kaplan:AGI?没有技术和工程基础