どのように私はpdfをpdfに読み込むことができますか?私はxtraGrid
からEditForm
にpdfをロードする次のコードを持っていますが、pdfViewerは最初のレコードpdfファイルを読み込み、それを保持します。 EditFormが終了したら、どうすればpdfをリセットできますか?pdfviewerは古いpdf値を保持します
//以下のコードでwHLDRWGTextEdit-は、ファイルパスに
private void ucFabLog_Load(object sender, EventArgs e)//ucFabLog is custom EditForm
{
try
{
FileStream stream = new FileStream(wHLDRWGTextEdit.Text, FileMode.Open);
pdfViewer1.LoadDocument(stream);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
}
}
が含まれている私はpdfViewer1.Refresh();
とpdfViewer1.DetachStreamAfterLoadComplete = false;
を追加することにより、以下のことを試してみましたが、それでもucFabLog場合は、別のレコード
private void ucFabLog_Load(object sender, EventArgs e) //ucFabLog is custom EditForm
{
try
{
FileStream stream = new FileStream(wHLDRWGTextEdit.Text, FileMode.Open);
pdfViewer1.DetachStreamAfterLoadComplete = false;
pdfViewer1.LoadDocument(stream);
pdfViewer1.Refresh();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
}
}
私はDevExpressでの経験はありませんが、 'stream'がまだ開いているからでしょうか?あなたのストリームを「閉める」または「処分する」ことを私は見ません。あなたのストリームを 'using'でラップします。また、迅速なGoogleは、コードのこの部分 'PdfViewerControl1.DocumentSource = null;'が役立つ可能性があります。 – 12seconds
@ 12秒後に 'pdfViewer1.Dispose();'を 'pdfViewer1.LoadDocument(stream);の隣に追加すると、pdfが読み込まれません。 – user8066749
'stream'を終えた後に' Closing() 'と' Dispose() 'が最後にするべきことがあります。それに関係なく、 '.DocumentSource = null;'を試しましたか? – 12seconds