X509Certificate2UI.SelectFromCollection メソッド

定義

証明書コレクションから X.509 証明書を選択するためのダイアログ ボックスを表示します。

オーバーロード

SelectFromCollection(X509Certificate2Collection, String, String, X509SelectionFlag)

証明書コレクションから X.509 証明書を選択するためのダイアログ ボックスを表示します。

SelectFromCollection(X509Certificate2Collection, String, String, X509SelectionFlag, IntPtr)

証明書コレクションから X.509 証明書を選択するためのダイアログ ボックスを、親ウィンドウのハンドルを使用して表示します。

注釈

ユーザーがダイアログ ボックスを使用して X.509 証明書を手動で選択する必要がある場合は、この方法を使用します。 ユーザー操作が必要ない場合は、 メソッドを使用します X509Certificate2Collection.Find

SelectFromCollection(X509Certificate2Collection, String, String, X509SelectionFlag)

ソース:
X509Certificate2UI.cs
ソース:
X509Certificate2UI.cs
ソース:
X509Certificate2UI.cs
ソース:
X509Certificate2UI.cs

証明書コレクションから X.509 証明書を選択するためのダイアログ ボックスを表示します。

C#
public static System.Security.Cryptography.X509Certificates.X509Certificate2Collection SelectFromCollection (System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates, string? title, string? message, System.Security.Cryptography.X509Certificates.X509SelectionFlag selectionFlag);
C#
public static System.Security.Cryptography.X509Certificates.X509Certificate2Collection SelectFromCollection (System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates, string title, string message, System.Security.Cryptography.X509Certificates.X509SelectionFlag selectionFlag);

パラメーター

certificates
X509Certificate2Collection

選択可能な X.509 証明書のコレクション。

title
String

ダイアログ ボックスのタイトル。

message
String

ユーザーに対する説明メッセージ。 このメッセージはダイアログ ボックスに表示されます。

selectionFlag
X509SelectionFlag

複数選択が可能かどうかを指定する X509SelectionFlag 値の 1 つ。

戻り値

選択された証明書を格納する X509Certificate2Collection オブジェクト。

例外

selectionFlag パラメーターのフラグが有効ではありません。

certificates パラメーターが null です。

certificates パラメーターが正しくありません。

次のコード例では、ユーザー インターフェイス ダイアログを表示して X.509 証明書を選択して表示する方法を示します。

C#
using System;
using System.Security.Cryptography;
using System.Security.Permissions;
using System.IO;
using System.Security.Cryptography.X509Certificates;

class CertSelect
{
    static void Main()
    {
        X509Store store = new X509Store("MY",StoreLocation.CurrentUser);
        store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);

        X509Certificate2Collection collection = (X509Certificate2Collection)store.Certificates;
        X509Certificate2Collection fcollection = (X509Certificate2Collection)collection.Find(X509FindType.FindByTimeValid,DateTime.Now,false);
        X509Certificate2Collection scollection = X509Certificate2UI.SelectFromCollection(fcollection, "Test Certificate Select","Select a certificate from the following list to get information on that certificate",X509SelectionFlag.MultiSelection);
        Console.WriteLine("Number of certificates: {0}{1}",scollection.Count,Environment.NewLine);

        foreach (X509Certificate2 x509 in scollection)
        {
            try
            {
                byte[] rawdata = x509.RawData;
                Console.WriteLine("Content Type: {0}{1}",X509Certificate2.GetCertContentType(rawdata),Environment.NewLine);
                Console.WriteLine("Friendly Name: {0}{1}",x509.FriendlyName,Environment.NewLine);
                Console.WriteLine("Certificate Verified?: {0}{1}",x509.Verify(),Environment.NewLine);
                Console.WriteLine("Simple Name: {0}{1}",x509.GetNameInfo(X509NameType.SimpleName,true),Environment.NewLine);
                Console.WriteLine("Signature Algorithm: {0}{1}",x509.SignatureAlgorithm.FriendlyName,Environment.NewLine);
                Console.WriteLine("Public Key: {0}{1}",x509.PublicKey.Key.ToXmlString(false),Environment.NewLine);
                Console.WriteLine("Certificate Archived?: {0}{1}",x509.Archived,Environment.NewLine);
                Console.WriteLine("Length of Raw Data: {0}{1}",x509.RawData.Length,Environment.NewLine);
                X509Certificate2UI.DisplayCertificate(x509);
                x509.Reset();
            }
            catch (CryptographicException)
            {
                Console.WriteLine("Information could not be written out for this certificate.");
            }
        }
        store.Close();
    }
}

注釈

ユーザーがダイアログ ボックスを SelectFromCollection 使用して X.509 証明書を手動で選択する必要がある場合は、 メソッドを使用します。 ユーザー操作が必要ない場合は、 メソッドを使用します X509Certificate2Collection.Find

適用対象

.NET 9 およびその他のバージョン
製品 バージョン
.NET 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

SelectFromCollection(X509Certificate2Collection, String, String, X509SelectionFlag, IntPtr)

ソース:
X509Certificate2UI.cs
ソース:
X509Certificate2UI.cs
ソース:
X509Certificate2UI.cs
ソース:
X509Certificate2UI.cs

証明書コレクションから X.509 証明書を選択するためのダイアログ ボックスを、親ウィンドウのハンドルを使用して表示します。

C#
public static System.Security.Cryptography.X509Certificates.X509Certificate2Collection SelectFromCollection (System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates, string? title, string? message, System.Security.Cryptography.X509Certificates.X509SelectionFlag selectionFlag, IntPtr hwndParent);
C#
public static System.Security.Cryptography.X509Certificates.X509Certificate2Collection SelectFromCollection (System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates, string title, string message, System.Security.Cryptography.X509Certificates.X509SelectionFlag selectionFlag, IntPtr hwndParent);
C#
[System.Security.SecurityCritical]
public static System.Security.Cryptography.X509Certificates.X509Certificate2Collection SelectFromCollection (System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates, string title, string message, System.Security.Cryptography.X509Certificates.X509SelectionFlag selectionFlag, IntPtr hwndParent);

パラメーター

certificates
X509Certificate2Collection

選択可能な X.509 証明書のコレクション。

title
String

ダイアログ ボックスのタイトル。

message
String

ユーザーに対する説明メッセージ。 このメッセージはダイアログ ボックスに表示されます。

selectionFlag
X509SelectionFlag

複数選択が可能かどうかを指定する X509SelectionFlag 値の 1 つ。

hwndParent
IntPtr

ダイアログ ボックスの表示に使用する親ウィンドウのハンドル。

戻り値

選択された証明書を格納する X509Certificate2Collection オブジェクト。

属性

例外

selectionFlag パラメーターのフラグが有効ではありません。

certificates パラメーターが null です。

certificates パラメーターが正しくありません。

注釈

ユーザーがダイアログ ボックスを SelectFromCollection 使用して X.509 証明書を手動で選択する必要がある場合は、 メソッドを使用します。 ユーザー操作が必要ない場合は、 メソッドを使用します X509Certificate2Collection.Find

適用対象

.NET 9 およびその他のバージョン
製品 バージョン
.NET 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9