12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- using System;
- using System.Windows;
- using System.Windows.Navigation;
- using System.Windows.Threading;
- using InABox.Wpf;
- using InABox.WPF;
- namespace InABox.DynamicGrid
- {
- /// <summary>
- /// Interaction logic for PrintPreview.xaml
- /// </summary>
- public partial class PDFPreview : ThemableWindow
- {
- private readonly string _filename = "";
- private bool bPrinted;
- private WaitCursor cursor;
- public PDFPreview(string filename)
- {
- InitializeComponent();
- cursor = new WaitCursor();
- _filename = filename;
- }
- private void Browser_LoadCompleted(object sender, NavigationEventArgs e)
- {
- //MessageBox.Show("Loaded");
- var timer = new DispatcherTimer();
- timer.Interval = new TimeSpan(0, 0, 2);
- timer.Tick += (ot, et) =>
- {
- if (!bPrinted)
- {
- cursor.Dispose();
- cursor = null;
- //MessageBox.Show("Printing!");
- //IHTMLDocument2 doc = browser.Document as IHTMLDocument2;
- //doc.execCommand("Print", true, null);
- bPrinted = true;
- }
- else
- {
- timer.IsEnabled = false;
- //MessageBox.Show("Closing!");
- Close();
- }
- };
- timer.Start();
- }
- private void Window_Loaded(object sender, RoutedEventArgs e)
- {
- var html = string.Format(
- "<html><embed src=\"file:///{0}\" type=\"application/x-pdf\" title=\"Pdf Preview\" width=\"100%\" height=\"100%\" /></html>",
- _filename);
- browser.NavigateToString(html);
- }
- }
- }
|