⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 multipletemplates.vb

📁 asp.net技术内幕的书配源码
💻 VB
字号:
Imports System
Imports System.Web
Imports System.Web.UI

Namespace myControls


Public Class MultipleTemplatesTemplateItem
Inherits Control
Implements INamingContainer

    Private _dataItem As Integer

    Public Sub New( DataItem As Integer )
      _dataItem = DataItem
    End Sub

    Public Property DataItem As Integer
    Get
      Return _dataItem
    End Get
    Set
      _dataItem = Value
    End Set
  End Property
End Class


<ParseChildren(true)> Public Class MultipleTemplates
Inherits Control
Implements INamingContainer

  Private _itemTemplate As ITemplate
  Private _alternatingItemTemplate As ITemplate

  <TemplateContainer(GetType(MultipleTemplatesTemplateItem))> _
  Public Property ItemTemplate As ITemplate
    Get
      Return _itemTemplate
    End Get
    Set
      _itemTemplate = Value
    End Set
  End Property

  <TemplateContainer(GetType(MultipleTemplatesTemplateItem))> _
  Public Property AlternatingItemTemplate As ITemplate
    Get
      Return _alternatingItemTemplate
    End Get
    Set
      _alternatingItemTemplate = Value
    End Set
  End Property

  Public Overrides Sub DataBind()
    EnsureChildControls()
    MyBase.DataBind()
  End Sub

  Protected Overrides Sub CreateChildControls()
    Dim intCounter As Integer
    Dim objTemplateItem As MultipleTemplatesTemplateItem

    Controls.Clear()
    For intCounter = 1 To 10
      objTemplateItem = New MultipleTemplatesTemplateItem( intCounter )
      If Decimal.Remainder( intCounter, 2 ) = 0 Then
        ItemTemplate.InstantiateIn( objTemplateItem )
      Else
        AlternatingItemTemplate.InstantiateIn( objTemplateItem )
    End If
    Controls.Add( objTemplateItem )
  Next
End Sub

End Class

End Namespace

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -