本文整理汇总了C#中System.Windows.Xps.XpsDocumentWriter.WritingProgressChanged事件的典型用法代码示例。如果您正苦于以下问题:C# XpsDocumentWriter.WritingProgressChanged事件的具体用法?C# XpsDocumentWriter.WritingProgressChanged怎么用?C# XpsDocumentWriter.WritingProgressChanged使用的例子?那么, 这里精选的事件代码示例或许可以为您提供帮助。您也可以进一步了解该事件所在类System.Windows.Xps.XpsDocumentWriter
的用法示例。
在下文中一共展示了XpsDocumentWriter.WritingProgressChanged事件的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SaveMultipleFixedContentDocumentsAsync
private void SaveMultipleFixedContentDocumentsAsync(
XpsDocumentWriter xpsdw, FixedDocumentSequence fds)
{
_xpsdwActive = xpsdw;
xpsdw.WritingCompleted +=
new WritingCompletedEventHandler(AsyncSaveCompleted);
xpsdw.WritingProgressChanged +=
new WritingProgressChangedEventHandler(AsyncSavingProgress);
// Write the FixedDocumentSequence as a
// collection of documents asynchronously.
xpsdw.WriteAsync(fds);
}
// Cancel an async operation
public void CancelAsync()
{
_xpsdwActive.CancelAsync();
}
#endregion // Asynchronous Save Methods
#region Async Event Handlers
//
// Create an "async operation complete" event handler
// for saving a FixedDocumentSequence
//
private void AsyncSaveCompleted(
object sender, WritingCompletedEventArgs e)
{
string result;
if (e.Cancelled) result = "Canceled";
else if (e.Error != null) result = "Error";
else result = "Asynchronous operation Completed";
// Close the pakcage
_xpsDocument.Close();
if (OnAsyncSaveChange != null)
{
AsyncSaveEventArgs asyncInfo =
new AsyncSaveEventArgs(result, true);
OnAsyncSaveChange(this, asyncInfo);
}
}
//
// Create an "async operation progress" event handler for
// monitoring the progress of saving a FixedDocumentSequence.
//
private void AsyncSavingProgress(
object sender, WritingProgressChangedEventArgs e)
{
_batchProgress++;
if (OnAsyncSaveChange != null)
{
String progress =
String.Format("{0} - {1}", e.WritingLevel.ToString(),
e.Number.ToString());
AsyncSaveEventArgs asyncInfo =
new AsyncSaveEventArgs(progress, false);
OnAsyncSaveChange(this, asyncInfo);
}
// Call EndBatchWrite when serializing multiple visuals.
if ( (_activeVtoXPSD != null) && (_batchProgress == 3) )
_activeVtoXPSD.EndBatchWrite();
}