c# - 将非原始值分配给用户控件属性?

标签 c# asp.net user-controls webforms

我构建了一个具有公共(public)属性 string[] foo 的用户控件。

是否可以在实际标记中分配它?

项目类型为 ASP.NET webforms/web application。

我尝试了以下语法,但它不起作用:(它编译但从未分配值)。

<abc:MyControl runat="server" foo='<%# new string[]{"Hello"} %>' />

最佳答案

您可能会找到 PersistenceMode(PersistenceMode.InnerProperty)引起兴趣。 PersistenceMode 属性允许您创建具有嵌套属性的属性。请注意,在这种情况下,您的 aspx 代码将使用嵌套元素而不是属性,因为元素只能存储字符串。

在那种情况下,你会做类似的事情:

<abc:MyControl runat="server" >
    <foo>
        <element value="1" />
        <element value="2" />
    </foo>
</abc:MyControl>

关于c# - 将非原始值分配给用户控件属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4872982/

相关文章:

python - save_model 方法,但数据库需要不同的关系?

c# - 甚至找不到在 rowdatabound GridView 上添加的复选框控件

c# - jQuery 页面中的多个用户控件

wpf - 公开 WPF 中绑定(bind)的内部 Control 属性

C# 派生泛型方法

c# - 实现自定义 CacheDependency 以使 ASP.Net 缓存项无效

javascript - scriptmanager 和 rokbox 之间的冲突

c# - 使向导导航不那么线性的简单算法

c# - IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 常数值

c# - 重新定位列表中的项目