zoukankan
html css js c++ java
asp.net动态生成控件及访问控件
asp.net动态生成控件的方法:
1.在aspx页面放一个Panel控件
2.代码如下:
private
void
Page_Load(
object
sender, System.EventArgs e)
{
//
在此处放置用户代码以初始化页面
if
(Session[
"
p_userid
"
]
==
null
||
Session[
"
p_loginName
"
]
==
null
||
Session[
"
p_created
"
]
==
null
)
{
Response.Write(
"
<script>alert('请先登陆');location.href='../loginProc/login.aspx';</script>
"
);
Response.End();
}
else
{
Panel1.Controls.Add(
new
LiteralControl(
"
<table>
"
));
Panel1.Controls.Add(
new
LiteralControl(
"
\n
"
));
SqlCommand cmd
=
new
SqlCommand(
"
select infos.* from infos,infoGroups where infos.infoGroup_id = infoGroups.id and infoGroups.title='联系方式' order by infos.pri
"
,connPartner);
SqlDataAdapter da
=
new
SqlDataAdapter();
DataSet ds
=
new
DataSet();
da.SelectCommand
=
cmd;
da.Fill(ds,
"
infos
"
);
for
(
int
i
=
0
;i
<
ds.Tables[
0
].Rows.Count;i
++
)
{
Panel1.Controls.Add(
new
LiteralControl(
"
<tr>
"
));
TableCell cell
=
new
TableCell();
//
创建单元格,也就是第一列
cell.Text
=
ds.Tables[
0
].Rows[i][
"
title
"
].ToString();
//
设置单元格内的文本
Panel1.Controls.Add(cell);
Panel1.Controls.Add(
new
LiteralControl(
"
<td>
"
));
TextBox textBox
=
new
TextBox();
textBox.ID
=
"
t
"
+
ds.Tables[
0
].Rows[i][
"
id
"
].ToString();
Panel1.Controls.Add(textBox);
Panel1.Controls.Add(
new
LiteralControl(
"
</td>
"
));
Panel1.Controls.Add(
new
LiteralControl(
"
<td>
"
));
Label lb
=
new
Label();
lb.ID
=
"
l
"
+
ds.Tables[
0
].Rows[i][
"
id
"
].ToString();
lb.Text
=
"
"
+
ds.Tables[
0
].Rows[i][
"
tip
"
].ToString();
lb.CssClass
=
"
registerInfo
"
;
Panel1.Controls.Add(lb);
Panel1.Controls.Add(
new
LiteralControl(
"
</td>
"
));
Panel1.Controls.Add(
new
LiteralControl(
"
</tr>
"
));
Panel1.Controls.Add(
new
LiteralControl(
"
\n
"
));
}
Button rebt
=
new
Button();
rebt.ID
=
"
redirect
"
;
rebt.Text
=
"
不填了
"
;
rebt.Click
+=
new
EventHandler(rebt_Click);
Panel1.Controls.Add(rebt);
}
}
private
void
rebt_Click(
object
sender, EventArgs e)
{
Response.Redirect(
"
../partnerProc/default.html
"
);
}
访问动态生成控件,可以通过FindControl方法,代码如下:
for
(
int
i
=
0
;i
<
ds.Tables[
0
].Rows.Count;i
++
)
{
Label lb;
lb
=
(Label)Panel1.FindControl(
"
l
"
+
ds.Tables[
0
].Rows[i][
"
id
"
].ToString());
if
(lb
!=
null
)
{
lb.Text
=
"
"
+
ds.Tables[
0
].Rows[i][
"
tip
"
].ToString();
lb.CssClass
=
"
registerInfo
"
;
}
}
查看全文
相关阅读:
十大排序算法总结
Java Web之监听器
JVM 内存模型
设计模式--装饰者模式和建造者模式
Java Web之过滤器
jsp-servlet篇(三)
jsp- servlet篇(二)
jsp- servlet篇(一)
xml和xml解析
k8s环境部署(一)
原文地址:https://www.cnblogs.com/nasdaqhe/p/563592.html
最新文章
关于读取数据流文件时吞掉每行第一个字符的错误
每当使用struts2动态方法调用时,总是出现错误:There is no Action mapped for namespace [/user] and action name [user!add]
org.hibernate.exception.SQLGrammarException: could not insert
关于Spring使用@Pointcut出错的解决办法
org.apache.jasper.JasperException: javax.el.PropertyNotFoundException: Property “D_time” not found on com.zaj.train.model.TrainBean
java实现精简版计算器
关于URL传参中出现乱码的解决办法
ArrayList获取的所有对象均为相同的改错
java.lang.IllegalStateException解决办法
谈谈Java中的volatile
热门文章
并发策略-CAS算法
ConcurrentHashMap实现原理及源码分析
LinkedHashMap 源码详细分析(JDK1.8)
HashMap的扩容机制---resize()
说明一下在Java中<<符号的运算表示,以及>>和>>>都是怎么运算的。
TCP的三次握手与四次挥手(详解+动图)
Map.Entry的一般用处是什么?
Java中的关键字 transient
面试记录
文件上传和下载
Copyright © 2011-2022 走看看