Создание коллекции с типом пользователя

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Snussi
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 151
Зарегистрирован: 21.07.2004 (Ср) 18:08
Откуда: Москва, Россия

Создание коллекции с типом пользователя

Сообщение Snussi » 21.09.2005 (Ср) 16:10

Господа!
Вопрос такой: есть описаная мною структура, ну например:
Код: Выделить всё
  Public Structure GroupsDefinition
        Dim Font As Font
        Dim UseDefaultFont As Booleanдефолтный
        Dim Width As Integer
        Dim Heigth As Integer
        Dim AllowMultiline As Boolean
    End Structure

Эта структура помещена в моем юзерконтроле. Вопрс такой: можно ли создать у моего узерконтрола свойство, ну например Definitions, которое при обращении к нему представляло бы собой коллекцию, у которой тип Item'а был бы GroupsDefinition?

Заранее спасибо за ответы.

mad_Max
Бывалый
Бывалый
 
Сообщения: 203
Зарегистрирован: 15.09.2002 (Вс) 21:17
Откуда: Russia, Cherepovets

Сообщение mad_Max » 22.09.2005 (Чт) 23:11

Создай класс коллекции для GroupsDefinition
Код: Выделить всё
    Public Class MyCollection
        Inherits CollectionBase
        Public Sub Add(ByVal newItem As GroupsDefinition)
            Me.List.Add(newItem)
        End Sub
        Default Public Property Item(ByVal index As Integer) As GroupsDefinition
            Get
                Return Me.List.Item(index)
            End Get
            Set(ByVal Value As GroupsDefinition)
                Me.List.Item(index) = Value
            End Set
        End Property
    End Class

Это был необходимый минимум - можешь добавить в класс все что еще нужно от коллекции. Такая коллекция будет работать с циклом For Each ...
В своем контроле объяви поле типа этой коллекции и свойство, возвращающее ссылку на эту коллекцию
Код: Выделить всё
    Private m_Definitions As New MyCollection
    Public Property Definitions() As MyCollection
        Get
            Return m_Definitions
        End Get
        Set(ByVal Value As MyCollection)
            m_Definitions = Value
        End Set
    End Property

Fedorfx
Постоялец
Постоялец
 
Сообщения: 371
Зарегистрирован: 10.10.2002 (Чт) 0:14

Сообщение Fedorfx » 23.09.2005 (Пт) 10:33

Public XXX As Generic.List(Of YYY)
это появилось в 2005


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 48

    TopList