0

我确定这是基本的,但我无法弄清楚。

这不起作用-绑定表达式作为字符串传递给控件:

<uc:usercontrol runtat="server" message='<%#Me.protectedVariable%>'/>

后面的代码包括 page_load 中的 Page.Databind() 调用。

但这确实有效:

<uc:usercontrol runat="server" id="usercontrol1"/>

在 page_load 后面的代码中:

usercontrol1.message = Me.protectedVariable

我必须从代​​码隐藏中绑定吗?这是页面生命周期问题吗?

4

2 回答 2

2

将 Page.DataBind() 移至 PreRender 事件处理程序,问题已解决。似乎 web 用户控件的属性尚未绑定到 page_load。

于 2012-10-03T22:46:51.337 回答
1

代码看起来不错。

 <uc:usercontrol runtat="server" message='<%#Me.protectedVariable%>'/>

应该管用。

protectedVariable 应该在调用 Page.Databind() 之前设置;

你能告诉,具体的问题是什么。

于 2012-10-03T21:57:05.160 回答