我找到了解決方案。
這對XAML
<Window.CommandBindings>
<CommandBinding Command="ApplicationCommands.Print" PreviewExecuted="CommandBinding_PreviewExecuted" Executed="CommandBinding_Executed" />
</Window.CommandBindings>
這添加到代碼後面
private void CommandBinding_PreviewExecuted(object sender, ExecutedRoutedEventArgs e)
{
PrintDialog dialog = new PrintDialog();
if (dialog.ShowDialog() == true)
{
dialog.PrintDocument(Document.DocumentPaginator, "Print Job Title");
}
}
private void CommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
{
//needed so that preview executed works
}
一對夫婦的注意的事情。如果Execute事件未綁定,則PreviewExecuted方法不會發生。不知道爲什麼。
來源
2009-02-26 01:43:31
Ray
這偉大的工作。謝謝。 – Eternal21 2015-05-21 13:49:11