本文整理汇总了C#中System.Windows.Xps.Packaging.XpsDigitalSignature.Id属性的典型用法代码示例。如果您正苦于以下问题:C# XpsDigitalSignature.Id属性的具体用法?C# XpsDigitalSignature.Id怎么用?C# XpsDigitalSignature.Id使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。
在下文中一共展示了XpsDigitalSignature.Id属性的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: IterateSignatureDefinitions
// -------------------- IterateSignatureDefinitions --------------------
/// <summary>
/// Interates through the SignatureDefinition contained in a given
/// XPS document displaying and updating the signature properties
/// through a user dialog.</summary>
/// <param name="signatureDialog">
/// The user dialog to use in displaying and
/// updating the signature information.</param>
/// <param name="xpsDocument">
/// The XPS document containing the signature information.</param>
public void IterateSignatureDefinitions(
SignatureDialog signatureDialog, XpsDocument xpsDocument )
{
IXpsFixedDocumentSequenceReader docSeq =
xpsDocument.FixedDocumentSequenceReader;
// For every FixedDocument in the XPS document.
foreach (IXpsFixedDocumentReader doc in docSeq.FixedDocuments)
{
// For every SignatureDefinition in each FixedDocument.
foreach (XpsSignatureDefinition signature in
doc.SignatureDefinitions)
{
SignatureDisplayItem item =
signatureDialog.AddSignatureItem(signature);
// Signatures are bound to signature definitions by GUID.
// If the SignatureDefintion SpotId is the same as the
// SignatureId, the signature is signing that definition.
// For every signature in the XPS document.
foreach (XpsDigitalSignature sig in xpsDocument.Signatures)
{
if (sig.Id != null && sig.Id == signature.SpotId)
{
X509Certificate2 cert =
sig.SignerCertificate as X509Certificate2;
item.Signer =
cert.GetNameInfo(X509NameType.SimpleName, false);
item.IsSigned = true;
}
}// end:foreach (XpsDigitalSignature
}// end:foreach (XpsSignatureDefinition
}// end:foreach (IXpsFixedDocumentReader
}// end:IterateSignatureDefinitions()