Dans UserControl, je ne peux pas utiliser la méthode ShowMessageAsync(). Que puis-je faire pour l'utiliser.WPF Comment utiliser MahApps.Metro MessagBox dans UserControl
Répondre
Vous devez obtenir une référence au parent MetroWindow
. Vous pouvez le faire en utilisant la méthode Window.GetWindow
:
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
this.Loaded += UserControl1_Loaded;
}
private async void UserControl1_Loaded(object sender, RoutedEventArgs e)
{
Metro.Controls.MetroWindow window = Window.GetWindow(this) as Metro.Controls.MetroWindow;
if(window != null)
{
await window.ShowMessageAsync("This is the title", "Some message");
}
}
}
Vous avez toujours besoin d'une référence à un MetroWindow
pour pouvoir afficher une boîte de dialogue en utilisant la méthode ShowMessageAsync
dans MahApps.Metro
.
Merci beaucoup, ça a marché! – a516117636
N'oubliez pas d'accepter la réponse: https://meta.stackexchange.com/questions/23138/how-to-accept-the-answer-on-stack-overflow – mm8
Pourquoi ne pas l'utiliser? – Stuart