我有一个metro应用程序,想要检测打印机超级按钮何时打开和关闭。这个是可能的吗?
发布于 2013-05-01 15:44:32
你可以使用PrintManager的PrintTaskRequested事件。当打印机的符号栏打开时,该事件就会发生。PrintTaskRequested事件使用PrintTask对象进行打印。它有一个叫做Completed事件的事件。当打印任务完成时,它就会触发。
PrintTask类的MSDN文档
PrintManager类的MSDN文档
XAML
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
<Button Click="Button_Click_1" Content="Print" />
</Grid>C#
public sealed partial class BlankPage2 : Page
{
public BlankPage2()
{
this.InitializeComponent();
PrintManager printMan = PrintManager.GetForCurrentView();
printMan.PrintTaskRequested += PrintTaskRequested;
}
private void PrintTaskRequested(PrintManager sender, PrintTaskRequestedEventArgs e)
{
System.Diagnostics.Debug.WriteLine("Printer Opened");
//TODO:
PrintTask printTask = e.Request.CreatePrintTask(....);
printTask.Completed += printTask_Completed;
}
void printTask_Completed(PrintTask sender, PrintTaskCompletedEventArgs args)
{
//TODO:
}
private async void Button_Click_1(object sender, RoutedEventArgs e)
{
await Windows.Graphics.Printing.PrintManager.ShowPrintUIAsync();
}
}https://stackoverflow.com/questions/16313757
复制相似问题