Diese Codebasis wird aktiv aufrechterhalten, aber nicht aktiv entwickelt. Pull -Anfragen mit neuen Funktionen haben eine sehr schlanke Chance, zusammengeführt zu werden. In vielen Aspekten ist diese Codebasis "erledigt".
Bitte verwenden Sie den Code, aber nicht die Hoffnung, dass er die Bestrebungen hat, etwas mehr zu sein, als es derzeit ist.
MVVM -Dialoge sind eine Bibliothek, in der das Konzept des Öffnens von Dialogen aus einem Ansichtsmodell vereinfacht wird, wenn MVVM in WPF (Windows -Präsentations -Framework) verwendet wird. Es ermöglicht dem Entwickler, Unit -Tests für Ansichtsmodelle auf die gleiche Weise zu schreiben, die Unit -Tests für andere Klassen geschrieben werden.
Die Bibliothek hat Unterstützung für die folgenden Dialoge eingebaut:
Um ein modales Fenster zu öffnen, dekorieren Sie die Ansicht mit dem angehängten DialogServiceViews.IsRegistered :
< UserControl
x : Class = " DemoApplication.Features.Dialog.Modal.Views.ModalDialogTabContent "
xmlns = " http://schemas.microsoft.com/winfx/2006/xaml/presentation "
xmlns : x = " http://schemas.microsoft.com/winfx/2006/xaml "
xmlns : md = " https://github.com/fantasticfiasco/mvvm-dialogs "
md:DialogServiceViews.IsRegistered= " True " >
...
</ UserControl > Mit der registrierten Ansicht kann das Ansichtsmodell nun einen Dialog mit der Schnittstelle IDialogService öffnen:
public class ModalDialogTabContentViewModel : INotifyPropertyChanged
{
private readonly IDialogService dialogService ;
public ModalDialogTabContentViewModel ( IDialogService dialogService )
{
this . dialogService = dialogService ;
}
.. .
private void ShowDialog ( )
{
var dialogViewModel = new AddTextDialogViewModel ( ) ;
bool ? success = dialogService . ShowDialog ( this , dialogViewModel ) ;
if ( success == true )
{
Texts . Add ( dialogViewModel . Text ) ;
}
}
} Dialoge in WPF, die nicht aus Window erben, werden benutzerdefinierte Dialoge genannt. Diese benutzerdefinierten Dialoge werden unterstützt. Damit DialogService jedoch wissen, wie Sie mit ihnen interagieren, müssen Sie die IWindow -Schnittstelle implementieren.
MVVM -Dialoge werden standardmäßig das Standardfenster -Windows -Nachrichtenfeld oder das Dialogfeld "Datei Öffnen" öffnen, wenn er aufgefordert wird. Dies kann jedoch geändert werden, indem Sie Ihre eigene Implementierung von IFrameworkDialogFactory in DialogService bereitstellen.
Weitere Informationen zu den Konzepten von MVVM -Dialogen und erweiterten Proben zu den Themen finden Sie im Wiki.
Für alles, was wir mit vorhandenen MVVM -Frameworks gut spielen möchten. Das Erstellen einer neuen Anwendung kann entmutigend sein. Es müssen viele Entscheidungen getroffen werden, und einige Fehler sind schwerer zu korrigieren als andere. Um Ihnen auf Ihrem Weg zu helfen, haben wir eine Beispielanwendung erstellt, indem wir einige der beliebten MVVM -Frameworks verwenden, die heute vorhanden sind, um Ihnen zu zeigen, wie Sie MVVM -Dialoge in dieses Framework integrieren würden.
Derzeit wird die Beispielanwendung mit den folgenden Frameworks implementiert.
Wenn Ihr spezifisches Framework nicht zu den aufgeführten Rahmen ist, erstellen Sie bitte eine neue Pull -Anfrage und teilen Sie es uns mit.
Die Welt ist voller Schneeflocken und alle Anwendungen sind in irgendeiner Weise einzigartig. MVVM -Dialoge haben keinen Anspruch, alle Probleme in Bezug auf Dialoge zu lösen, ist jedoch eine fantastische Lösung für die meisten Anwendungen. Der Rest, die vom gemeinsamen Pfad abweichenden Anwendungen, können spezifische Änderungen am Verhalten des MVVM -Dialogs erfordern. Für diejenigen gibt es MVVM -Dialoge. Ein Repository mit Merkmalen und Funktionen, die von der Open -Source -Community entwickelt wurden und sehr spezifische Anforderungen lösen.
Wenn MVVM -Dialoge aus irgendeinem Grund nicht zu Ihrer Bewerbung passen, wecken Sie ein Problem in den MVVM -Dialogen bei und wir werden sehen, was wir tun können. Diese Merkmale werden immer von der Community implementiert, aber von den Wartenden von MVVM -Dialogen geführt.
Wenn Sie MVVM -Dialoge in Ihr Projekt aufnehmen möchten, können Sie diese direkt von Nuget installieren.
Führen Sie den folgenden Befehl in der Package Manager -Konsole aus, um MVVM -Dialoge zu installieren:
PM > Install-Package MvvmDialogsMVVM -Dialoge begannen als Artikel über CodeProject mit seiner ersten Revision, die im Mai 2009 veröffentlicht wurde. Zu dieser Zeit war MVVM immer noch neu und frisch, und das jetzt veraltete MVVM -Licht war noch nicht veröffentlicht worden. Tatsächlich existierte heute keine der MVVM -Bibliotheken, die heute üblicherweise verwendet wurden. MVVM -Dialoge entstand aus der Notwendigkeit, mit Dialogen aus dem View -Modell zu arbeiten, eine Reaktion auf die Tatsache, dass MVVM zwar ein beliebtes Muster war, die Unterstützung bei der Implementierung eher begrenzt war.
Die erste Veröffentlichung war also vor über 10 Jahren. Denken Sie daran. Ein Open -Source -Projekt, das nach 10 Jahren immer noch beibehalten und mit den Veröffentlichungen von .NET äußerst relevant ist. Nehmen Sie das alles da draußen, wenn Open Source Code volatil ist!
MVVM -Dialoge haben genug Ruf verdient, um mit anderen fantastischen MVVM -Bibliotheken auf Awesome .NET!, In Company gelistet zu sein.
Vielen Dank an JetBrains für Ihre wichtige Initiative zur Unterstützung der Open -Source -Community mit kostenlosen Lizenzen für Ihre Produkte.
