我正在尝试使用 vb 在 wpf 中打开一个 xps 文档作为带有 documentviewer 的固定文档,然后导航到文档中的书签/链接。我解压了 xps 并在 DocStucture.struct 中找到了可用的链接,但我不知道如何告诉文档查看器转到链接的位置。文档查看器包含在窗口的框架中,我可以单击文档目录中的链接到不同的链接。目的是允许最终用户在他/她按下按钮时将文档打开到特定位置(文档是用户指南)。
有人可以解释如何做到这一点吗?谢谢!
编辑:我尝试将链接打包到uri中,但是我只能弄清楚如何使框架导航到uri而不是documentviewer:
包含用户手册的窗口的类:
Partial Public Class UserManual
Private Sub DocViewer_Loaded(ByVal sender as Object, ByVal e as System.Windows.RoutedEventArgs)
Dim documentName As String = "@.\User Manual.xps"
Dim xpsDoc As XpsDocument
xpsDoc = New XpsDocument(documentName, IO.FileAccess.Read)
DocViewer.Document = xpsDoc.GetFixedDocumentSequence
End Sub
Public Sub New()
MyBase.New()
Me.InitializeComponent()
End Sub
End Class
在打开用户手册的主窗口中:
Private Sub Button_Click(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs)
Dim UserManualWindow As UserManual = New UserManual
UserManualWindow.Show()
Dim uri = New Uri("pack://file:,,,/User Manual.xps#PG_8_LNK_94")
UserManualWindow.DocFrame.Navigate(uri)
End Sub
这行不通。该框架仅显示 uri 的文本。我找不到类似的文档查看器方法。gotopage 方法只接受页码,而不是链接。