在标记中绑定Web用户控件属性

时间:2012-10-03 21:35:39

标签: asp.net vb.net

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

工作 - 绑定表达式作为字符串传递给控件:

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

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

但这确实有效:

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

在page_load后面的代码中:

usercontrol1.message = Me.protectedVariable

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

2 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:1)

代码看起来不错。

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

应该有效。

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

你能告诉我,究竟是什么问题。