C# 如何使用XPSDocument打开作为二进制资源包含在WPF应用程序中的XPS文件?
基本上,我在WPF应用程序中嵌入了一个xps文件,其中包含一个XPSDocument查看器作为资源C# 如何使用XPSDocument打开作为二进制资源包含在WPF应用程序中的XPS文件?,c#,wpf,xps,xpsdocument,C#,Wpf,Xps,Xpsdocument,基本上,我在WPF应用程序中嵌入了一个xps文件,其中包含一个XPSDocument查看器作为资源 public Page1() { InitializeComponent(); XpsDocument doc = new XpsDocument(SmartsysBrowser.Properties.Resources.test1, FileAccess.Read); docViewer.Document = doc.GetFixedDocumentSequence(); doc
public Page1()
{
InitializeComponent();
XpsDocument doc = new XpsDocument(SmartsysBrowser.Properties.Resources.test1, FileAccess.Read);
docViewer.Document = doc.GetFixedDocumentSequence();
docViewer.Focus();
}
加载应用程序时,我只希望文档查看器显示嵌入的资源
public Page1()
{
InitializeComponent();
XpsDocument doc = new XpsDocument(SmartsysBrowser.Properties.Resources.test1, FileAccess.Read);
docViewer.Document = doc.GetFixedDocumentSequence();
docViewer.Focus();
}
但是,该命令不能通过测试
XpsDocument doc = new XpsDocument(SmartsysBrowser.Properties.Resources.test1, FileAccess.Read);
我知道我需要键入XPS文档的文件路径,但由于它是作为资源嵌入的,如何键入
非常感谢大家
背景:
我应该制作一个显示机密文件的应用程序,而且由于限制制作/打印/分发副本也很重要,因此我决定使用ClickOnce WPF XBAP应用程序。根据我的推理,一旦我将ClickOnce应用程序从Web服务器中删除,它的所有副本都会变得无用。此外,它似乎是保护机密文件的最便宜和最可行的方法。请随时提出备选方案。我一直渴望向大家学习。当您使用嵌入式资源(即非WPF资源)时,您可以使用Assembly.GetManifestResourceStream从资源名称获取流,然后使用静态包。打开以获取包实例,然后,您可以使用另一个接受包作为参数的XpsDocument构造函数。当您使用嵌入式资源(即非WPF资源)时,您可以使用Assembly.GetManifestResourceStream从资源名称获取流,然后使用静态包。Open获取包实例,然后可以使用另一个XpsDocument构造函数,该构造函数接受包作为参数