有没有办法表达
<% objControl.ObjProp=ObjVar; %>
<my:Control ID="objControl" runat="server" />
就像这样,在一条线上?并且没有将ObjVar作为字符串传递?
<my:Control ID="objControl" runat="server" ObjProp=ObjVar />
答案 0 :(得分:0)
除非您处于数据绑定环境中,否则没有简单的方法可以做到这一点。如果它是数据绑定上下文(如在转发器/网格视图中),您可以简单地转到ObjProp ='&lt;%#ObjVar%&gt;',但在该上下文之外,您不能不幸地内联。
答案 1 :(得分:0)
像
一样使用它<my:Control ID="objControl" runat="server" ObjProp="<%# ObjVar %>" />
答案 2 :(得分:0)
正如fyjham所提到的,你需要在&lt;%#%&gt;的数据绑定上下文中执行此操作。句法。如果您尝试动态设置属性,那么您的另一个选择是将其设置在服务器端父级的onload代码隐藏方法中。
答案 3 :(得分:0)
什么是ObjVar?如果它是静态值,您只需将属性标记添加到控件元素中,就像这样......
<my:Control ID="objControl" runat="server" MyCustomBooleanProperty="true" />
如果它是包含控件的页面的成员变量,那么我会在后面的代码中这样做...
protected Page_Init()
{
this.objControl.ObjProp = this.ObjVar;
}
如果您正在对控件进行数据绑定,那么在使用数据绑定上下文的情况下其他正确。
<my:Control ID="objControl" runat="server" ObjProp=<%#Eval("ObjVar")%> />