Вызовите PrintDialog.ShowDialog() в пользовательском элементе управления WPF, который размещен в приложении WinForms.
У меня есть WPF UserControl, который использует System.Windows.Controls.PrintDialog:
XAML:
<UserControl x:Class="WpfControlLibrary1.UserControl1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Button Click="Button_Click"/>
</UserControl>
CodeBehind:
namespace WpfControlLibrary1
{
using System.Windows;
using System.Windows.Controls;
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
var printer = new PrintDialog();
printer.ShowDialog();
}
}
}
Если я сейчас использую этот UserControl в приложении WPF, PrintDialog-Windows появится как модальное диалоговое окно. (Как описано в MSDN)
Но если я использую UserControl в приложении Wondows-Forms, диалоговое окно отображается как немодальное диалоговое окно.
Кто-нибудь знает, как я могу вызвать PrintDialog как модальное диалоговое окно, когда я размещаю usercontrol в приложении Windows-Forms?
Благодарю вас в ожидании rhe1980
1 ответ
Решение
Решение / обходной путь, описанный здесь (на немецком языке):
http://mobilesolutions.noser.com/2013/01/winforms-meets-wpf-meets-winforms-meets-wpf-2/