Uygulamamda standart bir MessageBox'ı standart bir pencere olarak göstermeye çalışıyorum, ancak kalıcı olmayan bir şekilde biter. İlk çağrıda, aşağıdaki kodda olması gerektiği gibi modal olarak gösterilen standart bir MessageBox gösteriyorum. İkinci çağrıda, ana pencere dağıtıcısını alsam bile, modal olarak gösterilmez.WPF uygulamasında Modal İleti Kutusu
Dispatcher disp = Application.Current.MainWindow.Dispatcher;
//First call, shown MODAL
if (this.messageService.ShowYesNo("Do you want to update the Word document, this will regenerate inspectiondata for document", "") == MessageBoxResult.Yes)
{
using (new WaitCursor())
{
_eventAggregator.GetEvent<ProgressBarRequestShow>().Publish("");
worker = new BackgroundWorker();
worker.DoWork += delegate(object s, DoWorkEventArgs args)
{
AITUpdateProgressDelegate update = new AITUpdateProgressDelegate(UpdateProgress);
this.docService.UpdateWorddocument(this.docService.GetCurrentDocumentFilePath, update);
};
worker.RunWorkerCompleted += delegate(object s, RunWorkerCompletedEventArgs args)
{
try
{
// Second call NOT MODAL
disp.Invoke((Action)delegate()
{
this.messageService.ShowInformation("Document generated, choose Open in Word in main toolbar to show document", "");
});
_eventAggregator.GetEvent<ProgressBarRequestHide>().Publish("");
}
finally
{
}
};
worker.RunWorkerAsync();
}
}
Özel mesaj kutusu oluşturmak için WPF Penceresini neden kullanmıyorsunuz? –
Belgeleri biraz daha incelemeye ihtiyacım var, bilgi mesaj kutusu varsayılan olarak modal değil, birinin sahibi ayarlanması gerekiyor – klashagelqvist