2013-03-11 1 views
0

В VFP9 имеется ссылка на объект THIS, которая предоставляет ссылку на текущий объект в коде события или в определении класса. В vb.net есть ME, но, как я заметил, он ссылается на фактическую форму, а не на сам объект.

VFP Код для button1 клик:vfp9 'ЭТО' эквивалентно vb.net

this.caption = "CLICKED" <<OR>> thisform.button1.caption = "CLICKED" 

VB код

----------------------- <<OR>> Me.button1.text="CLICKED" 

Я хочу знать, пунктирная линия эквивалент в vb.net, ссылку на текущий объект. У нас есть система VFP9, и я пытаюсь преобразовать ее в vb.net.

ответ

0

VFP работает на основе ссылок на вложенные объекты для элементов управления, а «this» позволяет использовать относительную ссылку. Если вы хотите долгосрочную руку эквивалента VFP, это было бы что-то вроде

Thisform.button1.Caption = "CLICKED" 

Теперь, что сказал, вы можете столкнуться с другими контроллерами вниз в вашем преобразовании, которые выглядят как-то ...

это. Parent.otherControl.something ...

«.Parent» просто ссылается на родительский элемент управления текущего объекта. Итак, скажем, у вас есть форма со страничным кадром ... На этом 3 страницы. На странице 1 имеется контейнер. В этом контейнере есть текстовое поле и кнопка.

В щелчке по кнопке вы хотите отобразить сообщение о значении в элементе управления текстовым полем. Кнопка может иметь что-то вроде

Messagebox(This.Parent.TheTextBoxControl.Text) 

Вы не должны знать, насколько глубоко контейнер утопает в форме, вы просто знаете, что текстовое поле находится по отношению к кнопке через тот же родительский контроль.

+0

, даже если кнопка находится внутри рамки страницы или контейнера внутри файлового кадра, мне не нужно это делать 'Messagebox (This.Parent.TheTextBoxControl.Text)', но нужно только сделать это таким образом 'Messagebox (this .caption) 'в событии клика кнопки. Вот почему 'this' в vfp не только для относительного, но и для текущего объекта. Мне нужно знать, имеет ли vb.net тот же метод или способы. – Ikong

+0

Я действительно верю, что вы также можете ссылаться аналогично VFP, как в VB. Me.Parent.OtherControl как элементы управления должны быть связаны с каким-либо другим элементом управления для представления в форме, а «родительский» является общим свойством. Вы ДОЛЖНЫ иметь возможность ссылаться аналогичным образом. – DRapp