39 lines
1.1 KiB
C#
39 lines
1.1 KiB
C#
using System;
|
|
using System.Windows;
|
|
using Elwig.Helpers;
|
|
|
|
namespace Elwig.Windows {
|
|
public partial class DocumentViewerWindow : Window {
|
|
|
|
private TempFile? PdfFile = null;
|
|
private string? PdfPath = null;
|
|
|
|
public DocumentViewerWindow(string title, string path) {
|
|
InitializeComponent();
|
|
Title = $"{title} - {Title}";
|
|
PdfPath = path;
|
|
InitializeWebView();
|
|
}
|
|
|
|
public async void InitializeWebView() {
|
|
WebView.CreationProperties = new() {
|
|
UserDataFolder = App.TempPath,
|
|
};
|
|
await WebView.EnsureCoreWebView2Async();
|
|
WebView.Source = new($"file://{PdfPath}#view=FitH");
|
|
}
|
|
|
|
public DocumentViewerWindow(string title, TempFile file) : this(title, file.FilePath) {
|
|
PdfFile = file;
|
|
}
|
|
|
|
public void OnClosed(object sender, EventArgs evt) {
|
|
WebView.Stop();
|
|
WebView.Dispose();
|
|
PdfFile?.Dispose();
|
|
PdfFile = null;
|
|
PdfPath = null;
|
|
}
|
|
}
|
|
}
|