VB.net - Элемент Ссылка - PullRequest
       1

VB.net - Элемент Ссылка

1 голос
/ 22 марта 2011

Я знаю, что вы можете ссылаться на форму "косвенно", просто включив, например, "я" вместо "form1".

Есть ли способ сделать то же самое для таких элементов формы, как текстполя или переключатели?

Пример:

If me.checked = true then
    count += 1
Else
    count -=1
End If

Ответы [ 3 ]

0 голосов
/ 22 марта 2011

В VB ключевое слово me является ссылкой на экземпляр класса, который содержит область кода (как функцию этого класса), которая содержит ссылку me. Я не знаю, достаточно ли это ясно, но в основном me нельзя использовать внутри класса Form для ссылки на члена класса (такого как элемент управления CheckBox или RadioButton) - только на сам класс.

Элементы управления CheckBox и RadioButton, которые вы помещаете в форму, создаются как частные объекты внутри класса Form, который их содержит. Их называют членами класса. Внутри класса, который содержит экземпляры членов CheckBox и RadioButton, вы можете ссылаться на сам класс (форму) как me. Итак, при условии, что у вас есть флажок с именем «checkbox1» в качестве элемента управления в этой форме, этот элемент управления CheckBox будет создан как закрытый элемент внутри формы, как показано ниже:

Private checkbox1 as CheckBox

После этого из этой формы вы можете ссылаться на этот CheckBox следующим образом:

Me.checkbox1
0 голосов
/ 28 апреля 2011

VB.net использует переменную отправителя, которая указывает, чье действие отправляется в процедуру.Добавляя несколько элементов в свойство процедуры «handles», вы можете использовать отправителя для определения активного элемента.

0 голосов
/ 22 марта 2011

Единственный способ сделать это - создать свойство с именем selected, которое оборачивает элемент управления check box, который является членом вашего класса формы.Что-то вроде:

Public Property checked() As Boolean
    Get
        return myCheckbox.Checked
    End Get
    Set(ByVal Value As Integer)
        myCheckbox.Checked = value
    End Set
End Property

Хотя это мало что дает.Это на самом деле привело бы к запутыванию кода, а не к ясности и краткости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...