【发布时间】:2012-11-27 17:30:21
【问题描述】:
我正在创建一个包含ListView 的UserControl。我将其声明如下,我尝试了使用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 年自动生成?
【问题讨论】:
-
我所做的某件事似乎让问题消失了,我不知道是哪件事。
标签: c# asp.net visual-studio-2010 visual-studio-2008 asp.net-4.0