Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Moin da draußen,

ich habe grade angefangen ein Tool mit verschiedenen Funktionen zu bauen.

Nun will ich aber nicht für jede Funktion (Maske) ein eigenes Fenster öffnen, sondern habe ich klassisch als oberstes eine menubar, darunter eine toolbar und als Hauptfeld derzeit ein Stackpanel in dem die Arbeitsmaske dargestellt wird.

Wenn ich nun aber als Beispiel einen neuen User anlegen oder statt einen Datensatz zu Verwalten einen selbigen Abrechnen will, möchte ich, dass das Stackpanel die passende Maske anzeigt.

Ich hoffe ihr versteht was ich vorhabe und ich habe es nicht zu skurril ausgedrückt :D

Falls eine/r von euch eine Idee hat wie ich das umsetzen kann bzw welchen Themenbereich ich mir dazu anschauen sollte wäre ich für jeden Hinweis mehr als Dankbar!!

Vielen Dank schon mal im Voraus

Doc

Wenn du ordentlich nach dem MVVM Pattern arbeitest ist das ziemlich einfach.

Im Prinzip hast du ein ContentControl welches die Maske anzeigen soll und an eine Variable deines ViewModels gebunden welche ein anderes ViewModel darstellt. In deiner View hast du dann noch ein DataTemplate welches der View sagt mit welcher anderen View sie ein bestimmtes ViewModel darstellen soll.

Wenn du jetzt der Variable im ViewModel ein anderes ViewModel zuweist wird automatisch die dazu passende View angezeigt.

Um das mal etwas zu verdeutlichen noch ein paar auszüge:


<Window.Resources>
<DataTemplate DataType="{x:Type pd:PersonDataVM}">
<pd:PersonDataView />
</DataTemplate>
</Window.Resources>
<ContentControl Grid.Row="1" Content="{Binding Path=CurrentViewModel}" />
[/PHP]

[PHP]
BaseVM currentViewModel;
public BaseVM CurrentViewModel
{
get { return currentViewModel; }
set
{
if (currentViewModel != value)
{
currentViewModel = value;
OnPropertyChanged("CurrentViewModel");
}
}
}

Alle ViewModels haben halt BaseVM als Basisklasse.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.