我需要从标记中设置用户控件的属性值。
我需要在标记中设置我的用户控件中名为“ItemIndex”的属性。
出于某种不幸的原因,“<%:x%>” ItemIndex =“<%:x%>”的一部分没有得到解决。
基本上,ItemIndex的值变为“<%:x%>”而不是成为x的实际值。
以下是代码(请注意CAPS中的注释)。
<%@ Register TagPrefix="DDLControls" TagName="MainMenuItem" Src="~/Views/Header/MainMenuItemControl.ascx" %>
<div id="MainMenu">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<%
foreach (MenuItem mi in Model.Items)
{
string x = Model.Items.IndexOf(mi).ToString();
%>
<td>
<%= x %> <<-- THIS GETS RESOLVED TO 0,1,2,3,4,...
<DDLControls:MainMenuItem ItemIndex="<% x %>" runat="server" /> <<-- THIS DOESN'T GET RESOLVED
</td>
<%
}
%>
</tr>
</table>
</div>
答案 0 :(得分:2)
您需要将Bindable
属性添加到您的媒体资源中:
[System.ComponentModel.Bindable(true)]
public string SomeValue
{
get
{
return someValue;
}
set
{
someValue = value;
}
}