Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von m.grauber
Thema: [erledigt] WPF Form - Zugriff auf ein evtl. existierendes XAML-Element
Am im Forum: GUI: WPF und XAML

Hallo Rocket, Lars Schmitt, Zero_x,

ihr habt mir mit VisualTreeHelper sehr gut geholfen - so klappts.

Vielen Dank!!!

Thema: [erledigt] WPF Form - Zugriff auf ein evtl. existierendes XAML-Element
Am im Forum: GUI: WPF und XAML

Hallo,

In einigen meiner WPF-Fenstern existieren Buttons, die "MeinButton" benannt sind, in anderen Fenstern existieren diese Buttons nicht.

Einer bestimmten C# Methode übergebe ich als Parameter "MeinWindow" das Fenster.

Wie kann ich prüfen, ob im "übergebenen" Fenster "MeinButton" existiert und darauf zugreifen? X(


Button derbutton = (Button)MeinWindow.GetType().GetMember("MeinButton")
if (derbutton==null)
...;

Vielen Dank!

Thema: [erledigt] Entity Framework: ObjectSet selbst erstellen
Am im Forum: Datentechnologien

Hallo FZelle,

danke wiedereinmal für Deine Hilfe!

Zitat
Du trennst die Schichten nicht sauber und deswegen hast du unnötigerweise Abhängigkeiten die nicht gut, bzw hinderlich sind.

--> Da hast Du mich wieder einmal erwischt Werde ich mir später noch ansehen, versprochen!
Zitat
Erstelle dir für jede Problemdomain ein Repository, das zu einem Interface passt, das dir auch IQueryable<T> anbietet. Dann kannst du hier per LinQ drauf zugreifen.

--> Danke!, so mache ich es jetzt auch: Ich nutze nun normale Listen und es klappt wie Du sagst trotzdem. Ich wollte es halt absolut identisch machen, aber das ist an dieser Stelle tatsächlich unpassend. Der Briefträger kommt auch nicht mit einem Container bei mir vorbei, obwohl dieser zum Transport bei Bahn, LKW und Schiff dient.

Grüße

Thema: [erledigt] Entity Framework: ObjectSet selbst erstellen
Am im Forum: Datentechnologien

Hallo FZelle,

Zitat
Dir ist anscheinend nicht bewusst was Du da wirklich tust, oder?

--> Im Ansatz ist es mir schon bewußt, dass ich dadurch ein weitaus komplexeres Objekt benutze, als ich es eigentlich benötige und dass natürlich die Update-Funktionalität etc. von mir an dieser Stelle (derzeit) niemals gebraucht wird.

Ich möchte momentan einige kleinere Tabellen noch nicht auf dem SQL-Server anlegen und trotzdem bereits damit arbeiten können. Später sollen diese Tabellen auf dem Server angelegt werden. Damit dann bereits programmweit alles so weiterarbeiten kann wie bisher, würde ich diese Daten bereits jetzt vom (später) richtigen Typ anlegen wollen.

Aus Deiner Antwort schließe ich, dass ich das auf keinen Fall machen sollte und dann erst einmal mit normalen Collections und Klassen arbeiten sollte?

Ich bin natürlich belehrbar =)

Thema: [erledigt] Entity Framework: ObjectSet selbst erstellen
Am im Forum: Datentechnologien

Hallo Talla,

Danke für den Hinweis. Genau das ist jedoch mein Problem:


public ObjectSet<MeineKlasse> MeinObjectSet;  // geht und führt aber zum Fehler

Um den Fehler zu vermeiden müsste ich das ObjectSet so definieren:


public ObjectSet<MeineKlasse> MeinObjectSet = new ObjectSet<MeineKlasse>();

Da kommt aber beim ObjectSet ein Fehler "Für den Typ "System.Data.Objects.ObjectSet<TEntity>" sind keine Konstruktoren definiert.

Scheinbar kann ich nicht so einfach ein "eigenes" Objectset ohne Datenbankhintergrund definieren. Ich hätte gerne eine Klasse und eine Collection, die ähnlich aufgebaut ist wie die anderen ObjectSets aus der Datenbank. Erst bei Bedarf möchte ich dann diese Daten in den SQL-Server ausgliedern.

Bis dahin möchte ich mit meinem "lokalen Objectset" arbeiten. (Die wenigen Daten darin sind immer gleich und müssen nicht geändert werden).

Wie kann ich dieses ObjectSet trotzdem erstellen?

Vielen Dank!

Thema: [erledigt] Entity Framework: ObjectSet selbst erstellen
Am im Forum: Datentechnologien

Hallo,

ich arbeite mit dem EF und möchte ein bestimmtes ObjectSet (oder ObjectQuery) ersteinmal ohne Datenbank-Hintergrund erstellen - und später evtl. auf Datenbank-Tabellen umstellen. Leider erhalte ich einen Fehler:


// Meine Klasse ist so definiert:
public class MeineKlasse
{
  public MeineKlasse()
  {
    String Name {get; set;}
    int Id {get; set;}
  }
}

Leider bekomme ich beim Benutzen der Klasse in einem ObjectSet einen Fehler X(:


public ObjectSet<MeineKlasse> MeinObjectSet;  // geht

MeineKlasse _meineKlasse = new MeineKlasse();
_meineKlasse.Name="Test";
_meineKlasse.Id="1";

MeinObjectSet.AddObject(_meineKlasse);  // Fehler erst zur Laufzeit: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

Objectset ist lt. Dokumentation vom Typ (TEntity). Nur wie kann ich eine "Entity" so einfach erstellen, dass ich diese hier nutzen kann? Aus der MSDN werde ich leider nicht schlau...

Vielen Dank!

Thema: [erledigt] Entity Framework: Grundsatzempfehlung: SQL-Server-Beziehungen angeben?
Am im Forum: Datentechnologien

Hallo dN!3L,

Entschuldige, ich wußte nicht, dass so etwas nur ein Moderator machen darf. Werde mich zukünftig daran halten.

Grüße

Thema: [erledigt] Entity Framework: Grundsatzempfehlung: SQL-Server-Beziehungen angeben?
Am im Forum: Datentechnologien

Hallo witte,

Danke!

Fazit also: Es können grundsätzlich Beziehungen am Server erstellt werden oder nicht. Es ist also kein "Muss".

(Ich bin glücklich hier nicht das Thema "Mehrschichtenmodell" angerissen zu haben.)

Grüße

Thema: [erledigt] Entity Framework: Grundsatzempfehlung: SQL-Server-Beziehungen angeben?
Am im Forum: Datentechnologien

Hallo,

Da sich niemand weiter gemeldet hat muss ich doch nochmal nachfragen:

Ist dieses Thema zu trivial oder ist es eine sinnlose Frage?

Grüße

Thema: [erledigt] Entity Framework: Grundsatzempfehlung: SQL-Server-Beziehungen angeben?
Am im Forum: Datentechnologien

Hallo TomLeech,

Zitat
Es gibt keine Fremdschlüssel auf sich selber und auch keine Möglichkeit " Kreise " zu machen, zumindest hätte ich noch nicht herausgefunden wie.

--> Beim SQL-Server neue Beziehung erstellen und dann jeweils bei Fremdschlüsseltabelle und Fremdschlüsseltabelle das gleiche Feld angeben. Bei meinem Test geht das zumindest ohne Fehler.

Thema: [erledigt] Entity Framework: Grundsatzempfehlung: SQL-Server-Beziehungen angeben?
Am im Forum: Datentechnologien

Hallo witte,

ja, Linq-Abfragen stelle ich nach wie vor immer mit join, weil es für mich "so eine gewachsene Sache ist". Siehst Du einen Vorteil, mit Objektgraphen zu arbeiten, wenn ja - welchen?

(Natürlich müsste man bei Objektgraphen die Fremdschlüssel beim SQL-Server angeben.)

Thema: [erledigt] Entity Framework: Grundsatzempfehlung: SQL-Server-Beziehungen angeben?
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <SQL-Server 2000-2008R2>

Hallo,

wie ist Eure Meinung zum Angeben der Beziehungen zwischen den Tabellen beim SQL-Server? Bitte stimmt auch mit dafür/dagegen. Ich werde das dann hier ergänzen:


Für Beziehungen: 0
Gegen Beziehungen: 2


Vorteile:
- Validierungsmöglichkeit
- Beim grafischen Ausdruck sind die Beziehungen sichtbar
- Die Beziehungen werden vom Entity-Framework übernommen

Nachteile:
- Mehraufwand bei der Erstellung und Änderung der Beziehungen
- Teilweise problematisches Handling beim Einfügen/Import aus fremden Tabellen
- Datenbankaufbau wird auch für "Außenstehende" sehr leicht erkennbar (evtl. auch Vorteil)

Da ich meine Abfragen und Linq-Abfragen lieber "konventionell" tätige und die Möglichkeiten der Beziehungen nicht nutze, denke ich darüber nach, die Beziehungen nicht in der Datenbank anzugeben, da ich sie einfach nicht benötige.

Wie denkt ihr über diese Sache? Gibt es etwas, warum man die Beziehungen grundsätzlich (oder vorsorglich) unbedingt verwenden sollte?

Danke!

Thema: [erledigt] Entity Framework: Objekt aus Linq-Query ohne foreach "durchgehen"
Am im Forum: Datentechnologien

Hallo DevHB,

da hatte ich etwas schneller geschrieben als mein Gehirn funktionierte. Du hast natürlich Recht, wegen "this IEnumerable<T> enumerable"

Grüße

Thema: [erledigt] Entity Framework: Objekt aus Linq-Query ohne foreach "durchgehen"
Am im Forum: Datentechnologien

Hallo Diräkt, witte, Floste und Femaref,

vielen Dank für Eure Hilfe!

auf die ExtensionMethod von Diräkt war ich auch bereits gestoßen - ist aber für Listen und Collections, die kein IEnumerable implementieren. Trotzdem kann der Code gut an einigen anderen Stellen verwendet werden.

Ja, witte hat recht und es sind die "Felder einer Tabelle" und die Properties.

Und Floste hat eine schöne Foreach-Schleife beigesteuert. Diese nutze ich nun mit GetProperties und dann klappt es!

Vielen Dank nochmals an Alle

Thema: [erledigt] Entity Framework: Objekt aus Linq-Query ohne foreach "durchgehen"
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <SQL-Server 2008R2>

Hallo,

eine vom Entity Framework erstellte Klasse (einer SQL-Tabelle - keine Liste und keine Collection!) implementiert ja nicht IEnumerable<T> und daher kann ich kein foreach nutzen.

Ich möchte aber trotzdem jedes einzelne Element der Klasse (also jedes Feld der SQL-Tabelle) in einer Schleife durchgehen. Und das gerne ohne die Klasse zu ändern!

Der Code sollte natürlich auch dann funktionieren, wenn in der SQL-Tabelle zusätzliche Felder angefügt wurden bzw. die Entity-Klasse aktualisiert wurde und dort zusätzliche "Felder" stehen.

Also nochmals: Es geht hier um alle "Felder" eines einzelnen "Datensatzes".

Vielen Dank!

Thema: [erledigt] WPF Usercontrol vererbt - Code aber danach ausführen
Am im Forum: GUI: WPF und XAML

Hallo michlG,

Danke für den guten Link! Jetzt habe ich dazu noch einiges an Einblick gewonnen!

Grüße

Thema: [erledigt] WPF Usercontrol vererbt - Code aber danach ausführen
Am im Forum: GUI: WPF und XAML

Hallo,

Im "Stamm"-Usercontrol (Textbox) habe ich in's Lostfocus Code geschrieben.

In der abgeleiteten Klasse wird beim "Lostfocus" zuerst das Lostfocus Code des "Stamm"-Usercontrols und danach das Lostfocus der abgeleiteten Klasse nacheinander ausgeführt.

Ich möchte jedoch, dass der Lostfocus-Code des "Stamm"-Usercontrols zeitlich erst nach dem Lostfocus-Code des abgeleiteten Usercontrols ausgeführt wird.

Wie kann ich die Reihenfolge beeinflussen? ?(

Vielen Dank

Thema: [erledigt] WPF-Aktualisierung und BackgroundWorker
Am im Forum: GUI: WPF und XAML

Hallo ujr, Erfinder des Rades, talla,

war leider bei einem Kunden und komme erst jetzt wieder dazu. Danke für alle Infos!

@ujr: "Wie kommst Du darauf?" --> weil ich das im Debugger schrittweise nachvollziehen kann. Aber das Problem ist erstmal gelöst:

@talla: Super: Die Priority war auf normal. Habe ich auf höher gestellt und nun aktualisiert er sofort! Das Problem ist ersteinmal gelöst!

@Erfinder des Rades:

Zitat
...wenn es einen Fehler gibt, mußt du eh explizit reagieren, und kannst die Anzeige so nicht stehen lassen.
(Am besten natürlich, du programmierst so, dass kein Fehler auftritt.)

--> ja, ich versuch mein Bestes =) aber ich merke schon: es ist im separatem Thread alles etwas aufwändiger.

Vielen Dank nochmals an Alle!

Thema: [erledigt] WPF-Aktualisierung und BackgroundWorker
Am im Forum: GUI: WPF und XAML

Hallo ujr,

ok, dann muss ich das wohl so akzeptieren.

Einige Sekunden ist vielleicht etwas übertrieben und trifft nur im Debugger zu. Wenn jedoch ein Fehler auftritt, bleibt der falsche Stand stehen und vermittelt einen falsche Information.

Code an einem Stück z. B.:


LabelDatenbank.Content="Datenbank2";
//Hier stoppt z. B. C# den Thread und schaltet ersteinmal zum Hauptthread um. 
//Der Anwender sieht also kürzere Zeit "Datenbank2" und "Tabelle1" (von der 
//letzten Aktualisierung), obwohl bereits Tabelle2 gemeint ist.
//Erst nachdem wieder zu diesem Thread umgeschalten wird, wird folgendes 
//ergänzt:
LabelTabelle.Content="Tabelle2";
LabelAktion.Content="Prüfen";

Grüße

Thema: [erledigt] WPF-Aktualisierung und BackgroundWorker
Am im Forum: GUI: WPF und XAML

Hallo Winsharp!

danke auch Dir für diesen Tipp!

Ich habe es mir angesehen und mir gefällt, dass der Code etwas reduziert wird. =) Das Einsatzgebiet ist etwas anders und ich werde dies an einer weiteren Stelle bei mir einsetzen, wo der Code noch "etwas gleichfoermiger" ist.

Vielen Dank!

Grüße

Thema: [erledigt] WPF-Aktualisierung und BackgroundWorker
Am im Forum: GUI: WPF und XAML

Hallo talla,

vielen Dank für die ausführliche Hilfe!

ja, den sehr guten Betrag hatte ich u. a. auch bereits gelesen.

Zitat
Hat man nur weniger Aktionen, "verschluckt" er einige Ausgaben oder zeigt sie später an.
--> Ja, ich möchte natürlich nur die von mir angegebenen Aktualisierungen sehen und nicht mehr. Ich meinte ein etwas seltsames Verhalten im Debugger: Obwohl der Code für die Ausgabe bereits durchlaufen wurde und z. B. ein Label aktualisiert wurde, arbeitet er im "Hauptcode" bereits wieder weiter und nach 3-4 Schritte in diesem Hauptcode, führt er auf einmal die Bildschirmaktualisierung des Labels etc. durch.
Im Debugger stört mich das seltsame Verhalten nicht weiter, wenn jedoch im Echtbetrieb beim Kunden ein ähnliches Verhalten erfolgt, könnte ich im Fehlerfall durch ein noch nicht aktualisiertes Label die auf falsche zugehörige Aktion schließen, bei dem der Fehler auftritt. Ich hoffe also, es liegt nur am Debugger.
Aber scheinbar will WPF unbedingt selbst entscheiden, wann ein Control neu gezeichnet werden soll.
Zitat
Da du sagst umschalten zwischen Threads, nehm ich an du hast mehrere BackgroundWorker.
--> Entschuldige meine zweideutige Ausdrucksweise: Ich meinte mit Threads den normalen "Programmthread" und den einen "Backgroundthread". Mit mehreren Background-Workern zu arbeiten, möchte ich wirklich vermeiden ! Ich meinte folgendes:
Wenn ich bei der Bildschirmaktualisierung z. B. 3 Labels habe: "Datenbank:", "Tabelle:", "Aktion:" muss ich die Informationen in 3 Codezeilen nacheinander aktualisieren. Es kann vorkommen, dass der Thread genau nach der 1. Zeile wechselt und die folgenden beiden Zeilen erst einige Sekunden später aktualisiert werden, wenn der Thread die Zeitscheibe wiedererlangt. Damit sieht der Anwender evtl. falsche zusammengehörige Informationen angezeigt. Nur wie kann man verhindern, dass der Worker an einer bestimmten Zeile ersteinmal zum Hauptthread kurzzeitig umschaltet?
Zitat
Lass doch im Fehlerfall die DoWork Methode einfach normal enden und setz nen Flag welches vom RunWorkerCompleted Delegate dann ausgewertet werden kann und in dem du dann bei Bedarf die Applikation beenden kannst.
--> Danke für den Tipp! So etwas wollte ich eigentlich vermeiden, aber dann werde ich es wohl so machen.

Vielen Dank und Grüße!

Thema: WPF: Code für mehrere WPF-Fenster wiederverwenden
Am im Forum: GUI: WPF und XAML

Hallo Mr. Sparkle,

Zitat
Es geht nur nicht für Klassen mit XAML-Definition.

--> Also für ein XAML-WPF-Fenster geht es nicht.
Zitat
Aber das macht nichts, du kannst dir deine Gerüste in reinem Code bauen,...
--> Ja eine Klasse
Zitat
... und in den zuletzt abgeleiteten Klassen kannst du eine XAML-Datei mit den Steuerelementen hinzufügen.
--> das verstehe ich nicht? Wie binde ich die Klasse an das XAML-Fenster?

Danke

Thema: [erledigt] WPF-Aktualisierung und BackgroundWorker
Am im Forum: GUI: WPF und XAML

Oh, wie ich dieses Thema hasse :

Direkt nach dem Öffnen eines WPF-Windows möchte ich einen eher kurzen Code durchlaufen lassen und im Fenster soll u. a. ein Label und Progressbar aktualisiert werden.

Natürlich wird es nicht korrekt gezeichnet: Hierzu gibt es tausende Workarounds die alle nicht funktionieren und als ein Ausweg wird der BackgroundWorker genannt.

Mein Problem dabei ist aber:

- Der BackgroundWorker arbeitet zu langsam. Die Aktualisierung erfolgt nur in längeren Schleifen mit viel Rechenaufwand bzw. langer Laufzeit korrekt. Hat man nur weniger Aktionen, "verschluckt" er einige Ausgaben oder zeigt sie später an.

- Der BackgroundWorker kann in einem ungünstigen Fall zwischen den Threads umschalten. Dann stimmen kurzfristig die Informationen (z. B. 3 Labels nicht mehr überein), da z. B. genau 2 Labels noch nicht aktualisiert wurden.

- Im Debugger springen mir immer andere Aktionen dazwischen

- Zudem muss ich ohnehin auf das Ende des Workers warten.

- Schlimmstes Problem: im "ProgressChanged" kann ich zwar UI-Elemente aktualisieren, jedoch werden in meinem Hauptcode des Workers z. B. auch Observable Collections gefüllt. DataContexte auf DataGrids (sind natürlich auch UI-Elemente) können dort auch nicht zugewiesen werden.
Ich kann den DataContext zwar am Worker-Ende zuweisen, es ist jedoch wieder ein Mehraufwand und bringt den Code durcheinander.
Zudem kann ich im ProgressChanged nicht mehr Application.Current.Shutdown aufrufen, da es ja ein anderer Thread ist.

Ziemlich viel Aufwand, nur um einen kurzen Balken und Fortschritt anzuzeigen.

Vielleicht hat jemand einen Rat?

Danke

Thema: [erledigt] += mit zusätzlichem Parameter
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo dN!3L,

ja das stimmt! Ich hatte dies auch schon versucht, bin jedoch auf ein weiteres Problem gestoßen. Das gehört jedoch in einen anderen Eintrag.

Vielen Dank und Grüße

Thema: WPF: Code für mehrere WPF-Fenster wiederverwenden
Am im Forum: GUI: WPF und XAML

Hallo Mr. Sparkle,

dass weiß ich schon, Aber da genau beißt sich die Katze in den Schwanz:

1. eine WPF-Form kann nicht abgeleitet werden

2. ich möchte gerne mehrere "Ableitungen" haben

Also lautet die Antwort: es geht nicht?

Grüße

Thema: WPF: Code für mehrere WPF-Fenster wiederverwenden
Am im Forum: GUI: WPF und XAML

Hallo Mr. Sparkle,

vielen Dank. Ich möchte ja in der Klasse "Window" eine neue Property "MeineProperty" anlegen, daher ist auch "Window" angegeben.

Alle "Windows" denen dieses Template zugewiesen wird, sollen "MeineProperty" haben und ich will auf "MeineProperty" dann auch im CodeBehind zugreifen.

Scheinbar ist dies aber trotzdem der falsche Weg.

Grüße

Thema: [erledigt] += mit zusätzlichem Parameter
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

das abonieren des Events ist einfach:


worker.DoWork += new DoWorkEventHandler(worker_DoWork);

public static void worker_DoWork(object sender, DoWorkEventArgs e)
{
   ...
}

Nur wie kann ich worker_DoWork noch einen weiteren Parameter mit auf den Weg geben?

So geht das nicht:


worker.DoWork += new DoWorkEventHandler(worker_DoWork("Test"));

public static void worker_DoWork(object sender, DoWorkEventArgs e, String teststring)
{
   MessageBox.Show(teststring);
}

Geht das nur per externem Member?

PS: Google lässt nicht nach "+=" suchen. Auch nicht in Hochkommas eingeschlossen. Wie macht Ihr so etwas?

Grüße

Thema: WPF: Code für mehrere WPF-Fenster wiederverwenden
Am im Forum: GUI: WPF und XAML

Hallo winsharp93,

das ich Dir als letztes Antworte hat den Grund, dass Du mir die meisten Themen vorgegeben hast, mit denen ich mich seither beschäftige.

Zitat
Hmm - wirklich sauber klingt das nicht.
Gerade in der WPF solltest du Logik von der Darstellung trennen, d.h. den Codebehind eines Window möglichst schlank halten.
--> Möchte ich auch schlank halten. Es soll nur fensterspezifisches hinein
Zitat
Baue die Vererbungshierarchie lieber mit ViewModel-Klassen nach.
--> Mehrschichtig möchte ich vorerst nicht und hier handelt es sich wie gesagt NICHT um Daten, die in Tabellen gespeichert werden sollen.
Zitat
Wenn es hingegen um UI-bezogene Dinge geht, schaue dir - ja nach Gebiet - ControlTemplates, UserControls und Attached Behaiviors an.
--> Jawohl, damit beschäftige ich mich jetzt einige Zeit und habe mir alles etwas angesehen.

Attached Behaviors ist sehr komplex und passt nicht richtig.

UserControls - dann müsste ich in jede Form ein "unsichtbares" Usercontrol mit meinen gewünschten Members setzen? - Dort muss ich dann immer über das auf meiner Form integrierte Usercontrol arbeiten? Und ich müsste mir in jeder Form überlegen, an welche Stelle ich den Inhalt hineinsetzen darf.

ControlTemplates klingt passend: Nur das Problem ist folgendes. Wenn ich im Template versuche zu definieren:

<Style TargetType="Window">
  ...
  <Setter Property="MeineProperty" Value="0"></Setter>
  ...
</Style>

geht das nicht, da er diese Property nicht findet. Zudem ist es fraglich, ob ich auf diese Property dann auch im Codebehind zugreifen könnte.

Grüße

Thema: WPF: Code für mehrere WPF-Fenster wiederverwenden
Am im Forum: GUI: WPF und XAML

Hallo Mr. Sparkle,

danke für die Antwort! Ich habe mich vielleicht falsch ausgedrückt:

Wie gesagt, hat es an dieser Stelle nichts mit den Daten zu tun, sondern es handelt sich um die reine Funktionalität in Fenstern.

Muster1 und Muster2 sind KEINE Tabellen etc., sondern beinhalten nur ein oder mehrere Member, die mir zur Form notwendige Werte zwischenspeichern sollen. Sie werden nicht in Datenbanken gesichert und sind wirklich nur für das Fensterhandling gedacht. Ich möchte sie auch nicht per Binding ändern, sondern direkt im C# Programmcode darauf zugreifen.

z. B. "Muster1" = "EinfachesFensterMuster":
int FensterID = 0;

z. B. "Muster2" = "KomplexesFensterMuster":
bool FensterSchliessenErlaubt = true;
int FensterAutomatischZuNach = 0;
int FensterAnzeigebereich = 0;

Wenn ich also im XAML-Code angebe, dass "EinfachesFensterMuster" verwendet werden soll, möchte ich den Member FensterID im Codebehind automatisch haben. Wenn ich "KomplexesFensterMuster" angebe, sollen dessen 3 Member im Codebehind automatisch vorhanden sein.

Theoretisch könnte ich auch beide Muster angeben, was mir 4 Member verfügbar macht. Die Member sollen direkt auf Fensterebene verfügbar sein.

Ich hoffe, es ist nun besser beschrieben.

Grüße

Thema: WPF: Code für mehrere WPF-Fenster wiederverwenden
Am im Forum: GUI: WPF und XAML

Hallo Mr. Sparkle,

also nochmals einfach:

in einem Fenster möchte ich, wenn ich im XAML-Code auf "Muster1" verweise, die Klassenmember von "Muster1" in meiner WPF-Form haben:


public class Muster1
{
   public String Tempstring = "";
   public int TempId = 0;
}

D.h. wenn ich in WPFForm1 auf "Muster1" verweise und in WPFForm2 auch, will ich in beiden Forms Tempstring und TempId haben und diese sollen unabhängig voneinander geändert werden können.

Wie kann das einfach realisiert werden?

Danke