我可以在代码隐藏中执行此操作,但我正在寻找一种在标记本身中执行此操作的懒惰方式:
假设我有一个具有复杂属性的 UserControl:
public class MyControl : UserControl {
public Person Someone { get; set; }
}
我有一个带有此控件的页面:
<uc1:MyControl id="my1" runat="server" />
我想从页面标记中将一个人放入此控件,而不是代码隐藏。在代码隐藏中,它看起来像:
my1.Someone = GetSomePerson();
我想做:
<uc1:MyControl id="my1" runat="server" Someone="<%= GetSomePerson() %>" />
但这无效。关于如何做到这一点的任何建议?我想我可以一次做一个属性,但我正在寻找一种更通用的方法——我传入的复杂对象比这个例子大得多(几十个属性),所以我不想即使可以,也可以在标记中单独定义它们。
我想知道是否有某种神奇的<%$ %>
功能可以做到这一点。