IE プラグイン (Adobe Reader) の状態を照会する方法はありますか? タブ ページでホストされている組み込みブラウザー (私の調査に基づく推奨パターン) を介して、多くの複数ページのレポートをユーザーに提示する状況があります。ユーザーがレポートから移動すると、通常はデータを変更するために、再初期化された Adobe Reader に戻ります。これは、それらの場所が失われ、展開されたブックマーク ノードが折りたたまれたことを意味します。
以下は、私の問題の性質を完全に表現していることを願っている単純化されたコード スニペットです。
Public partial class ReportView : UserControl
{
private System.Windows.Forms.WebBrowser webBrowser;
private MyNamespace.ReportGenerator reportGen;
private String currentPDFtempPath;
public ReportView()
{
InitializeComponent();
this.Leave += (o, e) => { /*how can I save current place in pdf?*/ };
this.Enter += (o, e) => { /*return user last place in large pdf*/ };
}
public void ViewReport(string reportName)
{
currentPDFtempPath = reportGen.GetReport(reportName);
webBrowser.Navigate(currentPDFtempPath);
}
private void RefreshReport()
{
webBrowser.Navigate(currentPDFtempPath); /*reinitializes Adobe Reader*/
}
}
public class ReportController
{
private DataModel model;
private ReportView view;
ReportController(DataModel m, ReportView v)
{
this.model = m;
this.view = v;
model.Changed += (o, e) => { view.RefreshReport(); }
}
}