![]() |
Arbeiten mit dem PropertyGrid in Delphi.Net??
Guten Morgen,
wie kann ich das folgende Objekt:
Delphi-Quellcode:
in einem PropertyGrif anzeigen lassen. Hab das ganze wie in einem C# Tutorial gemacht mit:
unit VariaJob;
interface uses System.Collections; type TVariaJob = class private m_VariaObjects : ArrayList; m_CurrentSerial : string; m_MultiUse : boolean; m_JobQuantity : integer; m_MultiPartsCount : integer; m_MultiPartsQuantity : integer; public //Eine Liste die alle im Job vorhandenen Variablen Objekte enthält property VariaObjects : ArrayList read m_VariaObjects; //Die letzte vergebene Seriennummer property CurrentSerial : string read m_CurrentSerial write m_CurrentSerial; //Gibt an, ob der Nutzer Mehrfachnutzen wünscht property MultiUse : boolean read m_MultiUse write m_MultiUse; //Gibt an, wie oft der Job gelasert werden soll property JobQuantity : integer read m_JobQuantity write m_JobQuantity; //alle im job vorhandenen multiparts property MultiPartsCount : integer read m_MultiPartsCount write m_MultiPartsCount; //die anzahl der vom Benutzer gewünschten Multiparts property MultiPartsQuantity : integer read m_MultiPartsQuantity write m_MultiPartsQuantity; constructor Create; end; implementation constructor TVariaJob.Create; begin inherited Create; m_VariaObjects := ArrayList.Create(); end; end.
Delphi-Quellcode:
Warum funktioniert das erste, das zweite aber nicht???
//Funktioniert:
vJob := TVariaJob.create(); m_MainForm.PropertiesGrid.SelectedObject := vJob.VariaObjects; //Funktioniert aber nicht: vJob := TVariaJob.create(); m_MainForm.PropertiesGrid.SelectedObject := vJob; Wie kann ich in Delphi [CategoryAttribute] hinzufügen??? Danke, winx |
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
Hab was gefunden, die Properties müssen "published" sein damits funzt...
Ne andere Frage: Wie kann ich Attribute zu den Objekten hinzufügen: [CategoryAttribute('Meine Kategorie')] property Prop... Danke |
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
Zitat:
Aber du benutzt den Begriff anscheinend sowieso ständig falsch, oben für eine Klasse und hier für eine Eigenschaft... btw: Genau so wie du es beschrieben hast, sollte es (eigentlich) gehen. btw2: "published" gibt es eigentlich in .Net nicht. Einfach die Eigenschaft mit Browsable(true) markieren und gut ist. (Anscheinend emitiert D.Net hier standardmäßig Browsable(false), warum auch immer...) |
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
obwohl ichs echt falsch verwendet habe :-) kann man es in .net auch Objekten zuweisen...
könntest du mit en Bsp posten? danke... |
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
Zitat:
Du kannst sie an einen Typen oder einem seiner Member zuweisen, aber doch keinem Objekt! Und wie gesagt, dein...
Delphi-Quellcode:
... sollte absolut problemlos funktionieren.
[Category('BlaBla')]
property BlaBla : SomeType... |
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
Man kann einem Objekt damit Default Attribute zuweisen!!! Kannste ja dem Geier erzählen! :wall:
|
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
Nein, kann man nicht, man kann wie Elvis sagte einem Member ein Attribut wie Default zuweisen, nicht jedoch einem Objekt. Wenn du dasselbe Objekt über eine andere Referenz referenzierst, wird das Attribut nicht vorhanden sein, weil es auf der Reflektion des enthaltenden Objekts (bzw. der Klasse, genauer) basiert.
|
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
|
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
Zitat:
|
Re: Arbeiten mit dem PropertyGrid in Delphi.Net??
Zitat:
Nachdem nun schon ein zweiter versucht hat dir den Unterschied von einem Objekt zu einem Typen bzw. einem Member eines Typen zu erklären, hätte man eigentlich erwarten können, dass du den von dir verlinkten Artikel als Bestätigung unserer verzweifelten Versuche akzeptierst. Nunja, ich klinke mich jetzt hier einfach aus dem Thread raus, keine Ahnung ob OregonGhost Lust verspürt sich noch 5-mal zu wiederholen... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz