我正在创建一个UserControl
,其中包含ListView
。我将其声明如下,我已尝试使用ParseChildren
和PersistChildren
属性的其他方法。
[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年自动生成?
答案 0 :(得分:0)
如果你不需要在代码隐藏中的任何地方引用它,你不能只删除“runat = server”吗?