PersistChildrenAttribute コンストラクタ (Boolean)
アセンブリ: System.Web (system.web.dll 内)
構文
使用例
CollectionPropertyControl というカスタム サーバー コントロールに対して PersistChildrenAttribute 属性を適用する方法を次のコード例に示します。
このコード例は、PersistChildrenAttribute クラスのトピックで取り上げているコード例の一部分です。
' Use the PersistChildren attribute to set the Persist ' property to false so that none of this class's ' child controls will be persisted as controls. They will ' be persisted only as child elements of this class. ' If you set the PersistChildren attribute to true, or if you ' do not include this attribute when you create a control, ' the child controls will be persisted as controls. <PersistChildren(False)> _ <AspNetHostingPermission(SecurityAction.Demand, _ Level:=AspNetHostingPermissionLevel.Minimal)> _ Public NotInheritable Class CollectionPropertyControl Inherits Control Private _header As String Private _employees As New ArrayList() Public Property Header() As String Get Return _header End Get Set _header = value End Set End Property Public ReadOnly Property Employees() As ArrayList Get Return _employees End Get End Property ' Override the CreateChildControls method to ' add child controls to the Employees property when this ' custom control is requested from a page. Protected Overrides Sub CreateChildControls() Dim label As New Label() label.Text = Header label.BackColor = Color.Beige label.ForeColor = Color.Red Controls.Add(label) Controls.Add(New LiteralControl("<BR> <BR>")) Dim table As New Table() Dim htr As New TableRow() Dim hcell1 As New TableHeaderCell() hcell1.Text = "Name" htr.Cells.Add(hcell1) Dim hcell2 As New TableHeaderCell() hcell2.Text = "Title" htr.Cells.Add(hcell2) Dim hcell3 As New TableHeaderCell() hcell3.Text = "Alias" htr.Cells.Add(hcell3) table.Rows.Add(htr) table.BorderWidth = Unit.Pixel(2) table.BackColor = Color.Beige table.ForeColor = Color.Red Dim employee As Employee For Each employee In Employees Dim tr As New TableRow() Dim cell1 As New TableCell() cell1.Text = employee.Name tr.Cells.Add(cell1) Dim cell2 As New TableCell() cell2.Text = employee.Title tr.Cells.Add(cell2) Dim cell3 As New TableCell() cell3.Text = employee.Alias tr.Cells.Add(cell3) table.Rows.Add(tr) Next employee Controls.Add(table) End Sub 'CreateChildControls End Class 'CollectionPropertyControl
// Use the PersistChildren attribute to set the Persist // property to false so that none of this class's // child controls will be persisted as controls. They will // be persisted only as child elements of this class. // If you set the PersistChildren attribute to true, or if you // do not include this attribute when you create a control, // the child controls will be persisted as controls. [PersistChildren(false)] [AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class CollectionPropertyControl : Control { private String header; private ArrayList employees = new ArrayList(); public String Header { get { return header; } set { header = value; } } public ArrayList Employees { get { return employees; } } // Override the CreateChildControls method to // add child controls to the Employees property when this // custom control is requested from a page. protected override void CreateChildControls() { Label label = new Label(); label.Text = Header; label.BackColor = Color.Beige; label.ForeColor = Color.Red; Controls.Add(label); Controls.Add(new LiteralControl("<BR> <BR>")); Table table = new Table(); TableRow htr = new TableRow(); TableHeaderCell hcell1 = new TableHeaderCell(); hcell1.Text = "Name"; htr.Cells.Add(hcell1); TableHeaderCell hcell2 = new TableHeaderCell(); hcell2.Text = "Title"; htr.Cells.Add(hcell2); TableHeaderCell hcell3 = new TableHeaderCell(); hcell3.Text = "Alias"; htr.Cells.Add(hcell3); table.Rows.Add(htr); table.BorderWidth = 2; table.BackColor = Color.Beige; table.ForeColor = Color.Red; foreach (Employee employee in Employees) { TableRow tr = new TableRow(); TableCell cell1 = new TableCell(); cell1.Text = employee.Name; tr.Cells.Add(cell1); TableCell cell2 = new TableCell(); cell2.Text = employee.Title; tr.Cells.Add(cell2); TableCell cell3 = new TableCell(); cell3.Text = employee.Alias; tr.Cells.Add(cell3); table.Rows.Add(tr); } Controls.Add(table); } }
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
PersistChildrenAttribute コンストラクタ (Boolean, Boolean)
アセンブリ: System.Web (system.web.dll 内)
構文
Dim persist As Boolean Dim usesCustomPersistence As Boolean Dim instance As New PersistChildrenAttribute(persist, usesCustomPersistence)
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
PersistChildrenAttribute コンストラクタ
オーバーロードの一覧
名前 | 説明 |
---|---|
PersistChildrenAttribute (Boolean) | 入れ子になった内容を入れ子になったコントロールとして保持するかどうかを示すブール値を使用して、PersistChildrenAttribute クラスの新しいインスタンスを初期化します。 |
PersistChildrenAttribute (Boolean, Boolean) | 2 つのブール値を使用して PersistChildrenAttribute クラスの新しいインスタンスを初期化します。1 つ目のブール値は、入れ子になった内容を入れ子になったコントロールとして保持するかどうかを示し、2 つ目のブール値は、カスタム保持方法を使用するかどうかを示します。 |
- PersistChildrenAttribute コンストラクタのページへのリンク