加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 获取asp.net中动态创建的控件的属性值

发布时间:2020-12-15 21:11:35 所属栏目:百科 来源:网络整理
导读:我如何确定一些动态创建的asp.net控件的宽度? 例如,我有这样的代码: asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server"encosia:HighslideManager ID="HighslideManager1" runat="server" FadeInOut="true" OutlineTyp
我如何确定一些动态创建的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;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读