将动态变量传递给 UserControl 属性

raR*_*aRa 5 asp.net variables user-controls attributes

我正在创建一个 UserControl 并向其传递一个变量。

如果我这样做的话效果很好:

<uc:TestControl ID="testControl" runat="server" Variable="test"></uc:TestControl>
Run Code Online (Sandbox Code Playgroud)

但是我想将动态变量传递给控件,​​如下所示:

<uc:TestControl ID="testControl" runat="server" Variable="<%=dynamicVariable%>"></uc:TestControl>
Run Code Online (Sandbox Code Playgroud)

但不幸的是,这不起作用,我知道我可以在 Page_Load 上分配它,但我不喜欢这种方式。

所以我想知道这是否可能。有没有办法将动态变量分配给我上面想要的属性?或者我需要在 Page_Load 中执行此操作吗?

对于任何反馈,我们都表示感谢!谢谢!

Cra*_*ket 4

<%=语法不适用于标记为 的控件。runat="server"尝试使用数据绑定语法

Variable="<%#dynamicVariable%>"
Run Code Online (Sandbox Code Playgroud)

然后根据这个SO问题在用户控件上调用databind

编辑

对于数据库我认为这是一个直

testControl.DataBind()
Run Code Online (Sandbox Code Playgroud)

在 ASP.Net 3.5 及更高版本中受支持。