X509Certificate2UI.SelectFromCollection Metoda

Definicja

Wyświetla okno dialogowe wybierania certyfikatu X.509 z kolekcji certyfikatów.

Przeciążenia

SelectFromCollection(X509Certificate2Collection, String, String, X509SelectionFlag)

Wyświetla okno dialogowe wybierania certyfikatu X.509 z kolekcji certyfikatów.

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

Wyświetla okno dialogowe wybierania certyfikatu X.509 z kolekcji certyfikatów przy użyciu uchwytu w oknie nadrzędnym.

Uwagi

Użyj tej metody, jeśli użytkownicy muszą ręcznie wybrać certyfikaty X.509 przy użyciu okna dialogowego. Jeśli żadna interakcja użytkownika nie jest wymagana X509Certificate2Collection.Find , użyj metody .

SelectFromCollection(X509Certificate2Collection, String, String, X509SelectionFlag)

Źródło:
X509Certificate2UI.cs
Źródło:
X509Certificate2UI.cs
Źródło:
X509Certificate2UI.cs
Źródło:
X509Certificate2UI.cs

Wyświetla okno dialogowe wybierania certyfikatu X.509 z kolekcji certyfikatów.

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);

Parametry

certificates
X509Certificate2Collection

Kolekcja certyfikatów X.509 do wyboru.

title
String

Tytuł okna dialogowego.

message
String

Opisowy komunikat umożliwiający kierowanie użytkownika. Komunikat jest wyświetlany w oknie dialogowym.

selectionFlag
X509SelectionFlag

X509SelectionFlag Jedna z wartości określających, czy dozwolone są pojedyncze lub wielokrotne wybory.

Zwraca

X509Certificate2Collection Obiekt zawierający wybrany certyfikat lub certyfikaty.

Wyjątki

Parametr selectionFlag nie jest prawidłową flagą.

Parametr certificates ma wartość null.

Parametr certificates jest nieprawidłowy.

Przykłady

Poniższy przykład kodu przedstawia sposób wyświetlania okien dialogowych interfejsu użytkownika w celu wybrania i wyświetlenia certyfikatów 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();
    }
}

Uwagi

SelectFromCollection Użyj metody , jeśli wymagasz od użytkowników ręcznego wybrania certyfikatów X.509 przy użyciu okna dialogowego. Jeśli żadna interakcja użytkownika nie jest wymagana X509Certificate2Collection.Find , użyj metody .

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.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)

Źródło:
X509Certificate2UI.cs
Źródło:
X509Certificate2UI.cs
Źródło:
X509Certificate2UI.cs
Źródło:
X509Certificate2UI.cs

Wyświetla okno dialogowe wybierania certyfikatu X.509 z kolekcji certyfikatów przy użyciu uchwytu w oknie nadrzędnym.

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);

Parametry

certificates
X509Certificate2Collection

Kolekcja certyfikatów X.509 do wyboru.

title
String

Tytuł okna dialogowego.

message
String

Opisowy komunikat umożliwiający kierowanie użytkownika. Komunikat jest wyświetlany w oknie dialogowym.

selectionFlag
X509SelectionFlag

X509SelectionFlag Jedna z wartości określających, czy dozwolone są pojedyncze lub wielokrotne wybory.

hwndParent
IntPtr

Uchwyt okna nadrzędnego do użycia w oknie dialogowym wyświetlania.

Zwraca

X509Certificate2Collection Obiekt zawierający wybrany certyfikat lub certyfikaty.

Atrybuty

Wyjątki

Parametr selectionFlag nie jest prawidłową flagą.

Parametr certificates ma wartość null.

Parametr certificates jest nieprawidłowy.

Uwagi

SelectFromCollection Użyj metody , jeśli wymagasz od użytkowników ręcznego wybrania certyfikatów X.509 przy użyciu okna dialogowego. Jeśli żadna interakcja użytkownika nie jest wymagana X509Certificate2Collection.Find , użyj metody .

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.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