Dúvida com editor de propriedades

09/12/2009

2

Saudações pessoal!
Estou com uma pequena dúvida sobre um componente que estou desenvolvendo, vamso ver se alguém consegue me ajudar.

na estrutura do componente eu tenheo 3 classes:

TBemaCashTool  = class (TComponent)
TBemaCashToolCollection  = class (TCollection)
TBemaCashToolCollectionItem  = class (TCollectionItem)

o caso é o seguinte, em TBemaCashToolCollectionItem tenho uma propriedade string (CampoOrigem) que deverá me mostrar uma lista de campos disponiveis para seleção de um clientdataset que é por sua vez propriedade de TBemaCashTool mas o problema é que ao implementar o método GetValues me deparei com um problema conforme indicado abaixo, não consigo ter acesso a propriedade ClientDataSet para coletar a lista dos campos.


procedure TShowFieldEditor.GetValues(Proc: TGetStrProc);
Var BemacashTool : TBemaCashToolCollectionitem;
   i : integer;
begin
 BemacashTool:= GetComponent(0) as TBemaCashToolCollectionitem;
//-- aqui  começa os problemas
if Assigned(BemacashTool.ClientDataSet) then
   begin
     If BemacashTool.ClientDataSet.Fields.Count > 1 then
     For i:= 0 to BemacashTool.ClientDataSet.Fields.Count -1 do
       begin
         Proc(BemacashTool.ClientDataSet.Fields[i].FieldName);
       end;
   end;
end;


//--- uso esta linha para registrar o editor
RegisterPropertyEditor(TypeInfo(string), TBemaCashToolCollectionItem, 'DataField', TShowFieldEditor);



o que poderia ser feito para que eu consiga ter acesso ao Clientdataset?

agradeço caso possa me dar uma dica.

Grato,
Brener Bento Leão
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar