ASP.net中动态生成控件的问题?

xunlangxiao 2010-05-04 08:42:19
在ASP.net中我想在服务器端代码中动态的生成控件,比如生成Button按钮,也能让他们显示到页面上,但是如何让这些动态控件出现在页面的指定位置内,比如说据顶部的像素是多少多少,据左边缘的距离多少多少?如何在服务器端代码控制呢?小弟是初学者,今天老师刚讲到这儿,我突然想到这个问题的,还请各位高手前辈,多多指教啊!小弟万分感谢!
...全文
70 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
缪军 2010-05-05
  • 打赏
  • 举报
回复
注意,这个页面其实只定义了布局,数据无有,
甚至你都看不到css的加载,因为css也是动态加载的,(方法写在我的博客里了),
其实每个页面可以关联了一个同名的css,
再看看css的内容

#divBody{
width:780px;
}

#div_1_1,#div_3_1{
height:25px;
line-height:25px;
padding: 0 5px 0 5px;

}

#div_1_1 span{
margin-left:5px;
}

#div_1_1 div{
margin-top:-1px;
}

input[type="button"]{
float:right;
}
#btnSearch{
float:left;
}
#btnExport{
width:60px;
}

缪军 2010-05-05
  • 打赏
  • 举报
回复
写css不是一定要看着UI写的,css不依赖于aspx存在,只要css写对了、关联上了,就能起作用。
跟你的控件加载方式没有关系,
给你举个例子:有这么个页面,几乎没有代码,控件是动态加载的:
aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Color.aspx.cs" Inherits="Color" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">

function pageLoad() {
}

</script>
</head>
<body>
<form id="form1" runat="server">
<div id="divBody">
<ajaxToolkit:ToolkitScriptManager ID="Tsm1" runat="server"></ajaxToolkit:ToolkitScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div class="Hidden">
<Style:TextBoxPlus ID="txtMyRequest" runat="server"></Style:TextBoxPlus>
</div>

<div id="div_1_1" runat="server">

</div>

<div id="div_2_1" runat="server">

</div>

<div id="div_3_1" runat="server">

</div>



</ContentTemplate>
<Triggers>
</Triggers>
</asp:UpdatePanel>
</div>
</form>
</body>
</html>

缪军 2010-05-05
  • 打赏
  • 举报
回复
写css不是一定要看着UI写的,css不依赖于aspx存在,只要css写对了、关联上了,就能起作用。
跟你的控件加载方式没有关系,
给你举个例子:有这么个页面,几乎没有代码,控件是动态加载的:
aspx:
[code=HTML]
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Color.aspx.cs" Inherits="Color" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">

function pageLoad() {
}

</script>
</head>
<body>
<form id="form1" runat="server">
<div id="divBody">
<ajaxToolkit:ToolkitScriptManager ID="Tsm1" runat="server"></ajaxToolkit:ToolkitScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div class="Hidden">
<Style:TextBoxPlus ID="txtMyRequest" runat="server"></Style:TextBoxPlus>
</div>

<div id="div_1_1" runat="server">

</div>

<div id="div_2_1" runat="server">

</div>

<div id="div_3_1" runat="server">

</div>



</ContentTemplate>
<Triggers>
</Triggers>
</asp:UpdatePanel>
</div>
</form>
</body>
</html>

/code]
wonsoft 2010-05-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wuyq11 的回复:]
设置button 的style
Button bt = new Button();
bt.Text = "";
bt.Style.Add("position", "absolute");
bt.Style.Add("left","");
bt.Click += new EventHandler(bt_Click);
this.Controls.Add(bt);
[/Quote]
3楼正解,可参见这篇文章
《ASP.NET页面中动态增加的控件、添加事件》
vip__888 2010-05-04
  • 打赏
  • 举报
回复
根据你的需求添加后台样式。
peacehp 2010-05-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wuyq11 的回复:]
设置button 的style
Button bt = new Button();
bt.Text = "";
bt.Style.Add("position", "absolute");
bt.Style.Add("left","");
bt.Click += new EventHandler(bt_Click);
this.Controls.Add(bt);
[/Quote]


顶!!!!
wuyq11 2010-05-04
  • 打赏
  • 举报
回复
设置button 的style
Button bt = new Button();
bt.Text = "";
bt.Style.Add("position", "absolute");
bt.Style.Add("left","");
bt.Click += new EventHandler(bt_Click);
this.Controls.Add(bt);
frankbooth 2010-05-04
  • 打赏
  • 举报
回复
帮顶……
「已注销」 2010-05-04
  • 打赏
  • 举报
回复
PlaceHolder会是你想要的吗?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧