动态加载控件
参考文章:http://blog.csdn.net/yicko/archive/2005/04/16/349740.aspx
1、加载的是普通的控件,不是用户控件。用户控件用Loadcontrol,而普通控件则是新建对象,再加入到Controls中
2、可以加到各级容器的Controls中
3、定位通过对style的修改来完成。可以参考手工添加的控件的style。
4、自动具备ViewState,但其加载时间是在page_load 和控件事件响应之间。所以,在Page_load事件中,不能获得动态控件的状态。
动态控件和视图状态
在运行时动态创建控件时,控件的某些信息存储在随页呈现的视图状态中。但在将页回发到服务器时,先在 Page.Init 事件中实例化非动态控件(在页上定义)并加载视图状态信息,然后才能重新创建(通常在 Page_Load 处理程序中)动态控件。因此在动态控件创建之前,视图状态将暂时不与页的控件同步。在运行 Page_Load 事件之后,调用控件事件处理方法之前,将保持的视图状态信息加载到动态创建的控件中。
多数情况下,此视图状态处理模型都可以很好地工作。通常您将动态控件添加到容器的控件集合的末尾。因此,为动态控件存储的视图状态信息成为相应容器的视图状态结构末端的附加信息,并且页可以在控件创建之前忽略它。
但是,动态创建的控件的视图状态信息将在两种情况下会出问题:
- 如果您在现有控件之间插入动态控件。
- 如果您动态插入控件,并随后在往返期间使用不同的值重新插入它们。
如果在现有控件之间插入动态控件,该动态控件的视图状态信息将插入到视图状态结构的相应位置。在发送页并加载视图状态时,动态控件还不存在;因此,视图状态中的附加信息将不会对应于正确的控件。结果通常是出现表明存在无效强制转换的错误。
如果您在每次往返期间重新插入,则每次动态创建的控件都将从上述控件集的视图状态中选取属性值。在很多情况下,可以通过将容器控件的 EnableViewState 属性设置为 false 来避免此问题。在本例中,将不会保存有关动态控件的任何信息,并且与后续版本的控件之间不存在任何冲突。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 杭电的题,输出格式卡的很严。HDU 1716 排列2
- 移动端的(-webkit-linear-gradient -webkit-radial-gradient)
- ACM一年记,总结报告(希望自己可以走得很远)
- 移动端顺序问题上
- [USACO1.5]回文质数 Prime Palindromes
- 移动端上上(transform-translateZ注册)
- [USACO1.3]虫洞wormhole
- HTML--HTML入门篇(我想10分钟入门HTML,可以,交给我吧)
- 移动端初级知识点解析:translateZ translateY rotateY(上上上)
- new String() split详解
- XML--XML从入门到精通 Part 1 认识XML
- css的linear-gradient注意点
- css的linear-gradient
- 第十届山东省赛L题Median(floyd传递闭包)+ poj1975 (昨晚的课程总结错了,什么就出度出度,那应该是叫讨论一个元素与其余的关系)
- css中border-radius