我正尽力将我的演示和逻辑分开,但有一个问题。
如何将text-property设置为我的设计文件中的动态值?我想这样做:
<asp:Textbox id="txtUrl" runat="server" Text="<%= user.URL %>" />
但这会失败。我是否被迫从代码背后做到这一点?
答案 0 :(得分:2)
<asp:Textbox id="txtUrl" runat="server" Text="<%# user.URL %>" />
所有关于#。但它不会被设置,直到txtUrl.DataBind()或对象层次结构(如Page)调用DataBind()更高的东西。
答案 1 :(得分:1)
这个怎么样:
<input type="text"
id="txtUrl" name="txtUrl" runat="server"
value='<%= user.URL %>' />
答案 2 :(得分:0)
您可以使用绑定而不是评估。
此代码将文本框的Text
属性绑定到Url
返回的用户的MyData.GetLoggedInUser()
属性。这允许双向绑定。
<asp:FormView ID="UserView" runat="server" DataSourceID="LoggedInUser">
<ItemTemplate>
<asp:TextBox ID="tb"
runat="server"
Text='<%# Bind("Url") %>'></asp:TextBox>
</ItemTemplate>
</asp:FormView>
<asp:ObjectDataSource ID="LoggedInUser"
runat="server"
SelectMethod="GetLoggedInUser"
TypeName="MyData">
</asp:ObjectDataSource>