MaterialDesignInXAML / MaterialDesignInXAML/MaterialDesignInXamlToolkit
Nested dialog not visible after closing and reopening parent dialog
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C#
- Sterne
- 16.3k
- Forks
- 3.5k
- Ø Merge
- 1 T. 22 Std.
- Gemergte PRs (30 T.)
- 8
Beschreibung
Bug explanation
When you close a parent dialog which has a nested dialog open, the nested dialog becomes invisible the next time you open the parent dialog, it prevents all input because only the nested dialog PART_ContentCoverGrid is visible:
https://github.com/user-attachments/assets/dab526c5-eae5-4ee2-98a3-2b884cadb849
This seems to work fine with TransitionAssist.DisableTransitions="True":
https://github.com/user-attachments/assets/034231da-d54e-48c3-b3d8-89cd2375fa1d
Steps:
- Open
Rootdialog Rootdialog opensInnerdialog- Close
Rootdialog - Reopen
Rootdialog
public RootDialog RootDialog { get; } = new();
public MainWindow()
{
InitializeComponent();
_ = Application.Current.Dispatcher.InvokeAsync(async () =>
{
await Delay();
_ = DialogHost.Show(RootDialog);
await Delay();
RootDialog.OpenInnerDialog();
await Delay();
DialogHost.GetDialogSession(null)!.Close();
await Delay();
_ = DialogHost.Show(RootDialog);
});
static Task Delay() => Task.Delay(2000);
}
I'm not sure if this is even desired behavior, I assumed that all nested dialogs would close when parent is closed.
Hope I described the issue clearly, its a little bit hard to explain.
Version
5.1.0
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die im Issue beschriebene Sequenz mit DialogHost.Show, einem verschachtelten Dialog und aktivierten Übergängen zu reproduzieren; vergleiche sie mit TransitionAssist.DisableTransitions="True". Verfolge den Zustand von DialogHost und des verschachtelten Dialogs während des Schließens und erneuten Öffnens des übergeordneten Dialogs und überprüfe anschließend, dass der erneut geöffnete übergeordnete Dialog nicht mehr nur PART_ContentCoverGrid sichtbar lässt oder Eingaben blockiert.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp
- Bereich
- desktop
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100