Laden...

Kann man infragistics Controls serialisieren?

Erstellt von stevonix vor 15 Jahren Letzter Beitrag vor 15 Jahren 4.474 Views
S
stevonix Themenstarter:in
28 Beiträge seit 2007
vor 15 Jahren
Kann man infragistics Controls serialisieren?

Hallo Zusammen,

ist es möglich ein infragistics control bsp. ultragrid zu serialisieren?

Hat jemand vielleicht schon Erfahrung mit dem Thema?

Gruß
Stefan

Gelöschter Account
vor 15 Jahren

wenn sie das entsprechnede attribut besitzen ,dann kann man das.

49.485 Beiträge seit 2005
vor 15 Jahren

Hallo stevonix,

Controls kann (und sollte) man nicht serialisieren. Ich denke nicht, dass das für Infragistics Controls anders ist.

herbivore

S
stevonix Themenstarter:in
28 Beiträge seit 2007
vor 15 Jahren

Hi,

ich verstehe nicht warum man controls nicht serialisieren sollte?

Was wäre denn eine "schöne" Lösung die Properties in einer XML Datei pro user zu speichern damit jeder user seine Properties gesondert ändern kann.

Gruß
Stefan

915 Beiträge seit 2006
vor 15 Jahren

Controls ansich zu serialisieren macht in der Regel keinen Sinn, da man ja nur Eingabewerte abspeichern oder weiterleiten möchte z.B. zur Auswertung oder für das erstellen von Sessions. Bei Sessions kommt ja noch hinzu, das jeder "Benutzer oder Gruppe" unterschiedliche Eingaben tätigt die dann auch beim wiedereinwählen in das Programm als Vorgabewerte unterschiedlich ausfallen. Also, wenn Hein sich anmeldet z.b. bei einer BDE hat jener grade eine Pinkelpause angemeldet, während Hugo gerade als letzten schritt 100 Klopapierrollen zurückmelden wollte als Gutmenge. Somit kann es ja nicht angehen das Heinz nach seiner Pinkelpause plötzlich 100 Klopapierrollen zurückmeldet.

Die Frage ist daher, was möchtest du genau damit bewirken wenn du ein Control serialisieren möchtest?

Wie vernichtet stand Andreas unter den flammenden Augen seiner Kunden.
Ihm war's, als stünde des Schicksals dunkle Wetterwolke über seinem Haupte X(

G
15 Beiträge seit 2007
vor 15 Jahren

Was wäre denn eine "schöne" Lösung die Properties in einer XML Datei pro user zu speichern damit jeder user seine Properties gesondert ändern kann.

Da der Begriff "Properties" hier bestenfalls verwirrend ist, gehe ich einfach mal davon aus, daß es eigentlich darum geht die Eingabewerte zu speichern, falls nicht bitte ignorieren. Dazu wäre dann zu sagen, daß das UI, wozu numal auch Controls zählen, niemals zur Datenhaltung eingesetzt werden sollte. Das UI zeigt die Daten lediglich an. Zur Datenhaltung erstellt man seperate Klassen (am besten eine komplette seperate Schicht) und diese können dann serialisiert und z.B in eine XML Datei geschrieben werden.
Wenn man eine Uhrzeit speichern will, speichert man schließlich auch nicht gleich die ganze Uhr mit.

Gelöschter Account
vor 15 Jahren

ein grund warum man noch an serialisierung denken könnte, wäre, z.b. den layout-status (größe und position) eines controls zu speichern um ihn beim erneuten hochfahren wieder zu laden. aber das kann man aus den genannten gründen nciht mit serialisierung realisieren.

soetwas muss man zu fuß programmieren.

S
stevonix Themenstarter:in
28 Beiträge seit 2007
vor 15 Jahren

Hi,

ich meinte eigentlich nicht die Daten des Controls sondern eher die Layout properties. (Größe, Position, Farbe, etz...)

Nehmen wir mal an jeder user kann sich seine Controls selbst gestalten und positionieren, dann wäre es toll das Panel zu serialisieren und die XML datei in der DB zu speichern. Die alternative wäre eine komplexe Tabellen Struktur in der DB zu erstellen und beim verlassen das Panel auszulesen und die controls manuell in der DB zu speichern. (Das gleiche gilt natürlich beim auslesen nur umgekehrt)

Das Ultragrid von infragistics ermöglicht dies mit den Methoden saveXML oder loadXML. Dies ist wirklich sehr praktisch den es "merkt" sich da komplette Grid Layout ohne das ich als Programmierer alle einstellungen kennen muss, um diese dann in die DB zu speichern.

Gruß
Stefan

Gelöschter Account
vor 15 Jahren

ja aber das hat nichts mit serialisierung zu tun.

1.378 Beiträge seit 2006
vor 15 Jahren

ja aber das hat nichts mit serialisierung zu tun.

Seh ich auch so... du willst die Eigenschaften der Controls merken nicht das Control selbst und von den Eigenschaften bestimmt auch nicht alle.

Lg XXX

915 Beiträge seit 2006
vor 15 Jahren

Achso, das kannst dir etwas vereinfachen bzw. gibt es viele Möglichkeiten zu lösen.

Die gängigste und wohl einfachste lösung:
Anwendungseinstellungen - [Tutorial] Das neue Konfigurationsmodell im .NET Framework 2.0

Du kannst das aber auch über eigene Provider Lösen, macht dann Sinn wenn nen großes Programm mit Benutzer / Gruppen usw. nutzt - [Artikel] Eigene Settings Provider Kannst das aber auch in die Registry eintragen oder XML Files benutzen usw.. musst also nicht wie in dem Artikel unbedingt in *.ini Files speichern. Würde mir dann noch etwas einfallen lassen damit man nicht von jeden Control ableiten muss um die Attribute zu integrieren. Z.b könnte man dafür eine Komponente erstellen welche die Schnittstelle IExtenderProvider verwendet um dann von jeden Control die Properties auszulesen, zu suchen welche unterstützt werden und darüber die Attribute setzen lassen.

Wie vernichtet stand Andreas unter den flammenden Augen seiner Kunden.
Ihm war's, als stünde des Schicksals dunkle Wetterwolke über seinem Haupte X(