我正在创建一个UserControl
包含一个ListView
. 我声明如下,我尝试了其他使用ParseChildren
andPersistChildren
属性的方法。
[AspNetHostingPermission(SecurityAction.InheritanceDemand,
Level=AspNetHostingPermissionLevel.Minimal),
AspNetHostingPermission(SecurityAction.Demand,
Level = AspNetHostingPermissionLevel.Minimal),
Designer(typeof(ListViewItem)),
ParseChildren(false), PersistChildren(false)]
public partial class CustomListView : System.Web.UI.UserControl, IPaneControl, INamingContainer
{
在里面我有以下代码来ItemTemplace
设置ListView
[Browsable(false),
DefaultValue(null),
PersistenceMode(PersistenceMode.InnerProperty),
TemplateContainer(typeof(ListViewDataItem), BindingDirection.TwoWay)]
public virtual ITemplate ItemTemplate
{
get { return _lvChild.ItemTemplate; }
set { _lvChild.ItemTemplate = value; }
}
现在在该控件的使用者的模板中,我将使用
<ItemTemplate><asp:HiddenField runat="server" ID="ShippingAddressID" Value='<%#Eval("AddressID") %>' /></ItemTemplate>
在 Visual Studio 2008 中,这导致设计器文件不会自动生成HiddenField
ShippingAddressID,但在转到 Visual Studio 2010 时会自动生成。我怎样才能阻止它在 2010 年自动生成它?