2016-06-12 4 views
1

У меня проблемы с привязкой строковых свойств к TLabel.Пользовательские свойства компонента LiveBindings

TGotManager = class(TComponent) 
.. 
.. 
published 
    property HotQ1: String read FHotQ1 write SetHotQ1; 
    property HotQ2: string read FHotQ2 write SetHotQ2; 
.. 

Я создал компонент, потому что я не хочу использовать источник TPrototypeDatasource.

Моя цель - связать оба свойства с TLabel.text через конструктора.

Я сделал это с помощью ответа здесь: Delphi: Making a component visible to live binding

Пример 1:

//with this only HotQ1 is bindable via the designer. 
[ObservableMember('HotQ1')] 
TGotManager = class(TComponent) 

Пример 2:

//with this only HotQ2 is bindable via the designer. 
[ObservableMember('HotQ1')] 
[ObservableMember('HotQ2')] 
TGotManager = class(TComponent) 

Проблема заключается в том, что я могу только связать одно свойство с помощью дизайнер. При перетаскивании этого свойства другие, которые совместимы, загораются зеленым. При перетаскивании второго свойства остальные остаются красными.

+0

«Я преуспел только в одном свойстве» Ну, как ваш недостаток успеха с другим свойством проявляется? – MartynA

+0

@martynA Я отредактирую вопрос и объясню – Edward

+0

@martynA Надеюсь, теперь его ясно – Edward

ответ

0

Я не получаю больше одного свойства для работы с визуальными Livebindings. Я заставить его работать через:

http://docwiki.embarcadero.com/RADStudio/Seattle/en/The_Entire_Project_and_Observing_the_Results

также для ведения и автоматизации вещей далее эту страницу из австралийской группы пользователей: http://www.adug.org.au/technical/vcl/using-livebindings-to-connect-the-ui-to-objects/

Я не принимаю это как ответ, потому что это не решать проблему. Это обеспечило работу.

Смежные вопросы