Home
About
User Group Events
Other Events
News
Downloads
Discussions


General Discussions


Event Discussions


Job Board


ASP.NET


VB.NET


CSharp
Study Group



International .NET Association (INETA)
Do you want to sponsor an Event?
Contact the .NET User Group at sponsors@torontoug.net
 Online: 

There are currently:
64 Guests.

0 of 6,455 Members.




Hosting
provided by




Author Thread: Templated User Control
DigitalBlacksmiths
Templated User Control
Posted: Monday, November 12, 2007 9:54 PM (EST)

I'm trying my first Templated User Control.  I've got it to work at runtime, but design time is giving me problems.  I'm getting an error in the VS2008 IDE:

Type 'System.Web.UI.UserControl' does not have a public property named 'TitleTemplate'

Though it clearly does.

Any help would be appreciated.

Thanks,

James Meyer

 

Imports System.ComponentModel

Partial Class ContentTable

Inherits System.Web.UI.UserControl

Private m_TitleTemplate As ITemplate = Nothing

Private m_ContentTemplate As ITemplate = Nothing

GetType(TitleContainer))> _

_

_

False)> _

_

_

Public Property TitleTemplate() As ITemplate

Get

Return m_TitleTemplate

End Get

Set(ByVal value As ITemplate)

m_TitleTemplate = value

End Set

End Property

Protected Sub ContentTable_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init

If Not (m_TitleTemplate Is Nothing) Then

Dim container As New TitleContainer

m_TitleTemplate.InstantiateIn(container)

plTitle.Controls.Add(container)

End If

End Sub

Public Class TitleContainer

Inherits Control

Implements INamingContainer

Friend Sub New()

End Sub

Protected Sub TitleContainer_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init

End Sub

End Class

End Class


Comments:

Author Thread:
DigitalBlacksmiths
Templated User Control
Posted: Monday, November 12, 2007 9:57 PM (EST)

Sorry, my code was rendered incorrectly.  Here is the proper code:

Imports System.ComponentModel

Partial Class ContentTable

Inherits System.Web.UI.UserControl

Private m_TitleTemplate As ITemplate = Nothing

Private m_ContentTemplate As ITemplate = Nothing

<TemplateContainer(GetType(TitleContainer))> _

<TemplateInstance(TemplateInstance.Single)> _

<PersistenceMode(PersistenceMode.InnerProperty)> _

<Browsable(False)> _

<DesignerSerializationVisibility(DesignerSerializationVisibility.Content)> _

<EditorBrowsable(EditorBrowsableState.Never)> _

Public Property TitleTemplate() As ITemplate

Get

Return m_TitleTemplate

End Get

Set(ByVal value As ITemplate)

m_TitleTemplate = value

End Set

End Property

Protected Sub ContentTable_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init

If Not (m_TitleTemplate Is Nothing) Then

Dim container As New TitleContainer

m_TitleTemplate.InstantiateIn(container)

plTitle.Controls.Add(container)

End If

End Sub

Public Class TitleContainer

Inherits Control

Implements INamingContainer

Friend Sub New()

End Sub

Protected Sub TitleContainer_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init

End Sub

End Class

End Class



 


Home   |  About   |  User Group Events   |  Other Events   |  News   |  Downloads   |  Discussions   |  Study Group