Имя Пароль
Зарегистрироваться


* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Параметризованные свойства
8 февраля 2009

Как правило, разработчики создают свойства, возвращающие единственное значе-
ние или объект. В Visual Basic .NET можно создавать свойства, которые принимают
параметры. Как правило, такие свойства возвращают диапазон (или массив) значе-
ний. Рассмотрим для примера объект Engine, представляющий двигатель («engine»
по-английски — двигатель). У реального двигателя может быть несколько цилинд-
ров, аналогично объект Engine включает несколько объектов Cylinder. Чтобы не пи-
сать код для доступа к каждому из этих объектов, создают свойство Cylinder, полу-
чающее или устанавливающее значение любого объекта Cylinder в зависимости от
переданного параметра.
Объявление параметризованных свойств не отличается от такового для обычно-
го свойства, единственное отличие — в объявлении параметра. Далее пишут код
методов, получающих и устанавливающих значение свойства. Вот пример парамет-
ризованного свойства, открывающего доступ к массиву объектов:
Visual Basic .NET
Создать массив для хранения значений свойства.
Private mCylinders(7) As Cylinder
Public Property Cylincfers(ByVal i As Integer) As Cylinder
Get
1 Проверить параметр, переданный при обращении к свойству.
If I > 7 Then
MessageBox.Show("Property value out of range!")
Exit Property
End If
1 Если объект не существует, создать его.
If niCylinders(i) Is Nothing Then
mCylinders{i) - New Cylinder^)
End If
Return mCylinders(i)
End Get
Set(ByVal Value As Cylinder)
' Проверить параметр, переданный при обращении к свойству.
If i > 7 Then
MessageBox.Show("Property value out of range!")
Exit Property
End If
mCylinders(i) - Value
End Set
End Property
Visual C# не поддерживает параметризованные свойства, за исключением ин-
дексаторов, о которых пойдет речь в следующем разделе.

Теги: .NET

Статьи по теме:

Извлечение данных XML из баз данных SQL Server 2000
Управление лицензированием элементов управления
Обработка событий клавиатуры на уровне формы
Извлечение типизированных данных с помощью объекта DataReader
Рисование сложных фигур
Automatically Starting your Application on Windows Mobile
Редактор пользовательского интерфейса
Применение событий формы
Достоинства сертификации Microsoft
Проверка на уровне формы
Проверка на уровне поля
Класс DataViewManager
Удаление и отключение точек прерывания
Создание плана блочного тестирования
Вложенные типы
| .NET | Pavel |
 


Пн Вт Ср Чт Пт Сб Вс
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30


     



Rambler

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | .NET | Параметризованные свойства. Регион сайта: Москва и Санкт-Петербург