我如何确定一些动态创建的asp.net控件的宽度?
例如,我有这样的代码:
例如,我有这样的代码:
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server"> <encosia:HighslideManager ID="HighslideManager1" runat="server" FadeInOut="true" OutlineType="RoundedWhite" ControlBar="false" /> <table style="width: 100%; padding-left: 15px; padding-right: 15px;"> <tr> <td valign="top" style="width: 50%; border-right: dotted 2px White;"> <asp:literal id="litText" runat="server" mode="Passthrough"></asp:literal> </td> <td valign="top" style="width: 50%"> <table style="width: 100%;" cellspacing="10"> <tr> <td valign="top" style="width: 50%;" id="imageTD" runat="server" oninit="imageTD_OnInit"> <asp:literal id="litEmptyText" runat="server" mode="Passthrough"></asp:literal> <asp:repeater id="Repeater1" runat="server"> <ItemTemplate> <center> <encosia:HighslideImage ID="HighslideImage1" runat="server" Width="200px" ImageUrl='<%# Eval("ImageURL","images/images/{0}") %>' FullImageURL='<%# Eval("ImageURL","images/images/{0}") %>' AlternateText='Image <%# Container.ItemIndex%>'/> <asp:Label ID="imageDescriptionLabel" runat="server" CssClass="longtext" Text= '<%# CutimageDescText(String.Format("{0}",Eval("Description")),imageTD.Width) %>' /> </center> </ItemTemplate> <SeparatorTemplate> <%# ((Container.ItemIndex % 2) == 1) ? "</td></tr><tr><td valign=\"top\" style=\"width:50%;\">" : "</td><td valign=\"top\" style=\"width:50%;\">"%> </SeparatorTemplate> </asp:repeater> </td> </tr> </table> </td> </tr> </table>
我需要计算imageTD的宽度.
我试图在页面事件中计算它的宽度,但是这个属性也像其他样式属性一样是空的. (((
请帮我!
谢谢!
解决方法
你可以通过以下方式做到这一点:
>如果要使用“td”标记作为服务器,则需要将表标记的“runat”设置为“server”并设置该表的ID
>您还需要设置“服务器和ID”tr和td标签
>如果创建td不进入任何数据绑定控件,如转发器,您可以轻松地从服务器端的此控件获取任何属性
.aspx页面示例
<table runat="server" id="tabl1"> <tr runat="server" id="tr1"> <td runat="server" id="td1"> </td> </tr> </table>
.aspx.cs代码exaple
protected void Page_Load(object sender,EventArgs e) { var h = td1.Width; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。