Beispiel #1
0
        /// <summary>
        /// Displays the dialog.
        /// </summary>
        public CertificateIdentifier ShowDialog(CertificateStoreIdentifier store, bool allowStoreChange)
        {
            CertificateStoreCTRL.StoreType = CertificateStoreType.Directory;
            CertificateStoreCTRL.StorePath = String.Empty;
            CertificateStoreCTRL.ReadOnly  = !allowStoreChange;
            CertificatesCTRL.Initialize(null);
            OkBTN.Enabled = false;

            if (store != null)
            {
                CertificateStoreCTRL.StoreType = store.StoreType;
                CertificateStoreCTRL.StorePath = store.StorePath;
            }

            if (ShowDialog() != DialogResult.OK)
            {
                return(null);
            }

            CertificateIdentifier id = new CertificateIdentifier();

            id.StoreType   = CertificateStoreCTRL.StoreType;
            id.StorePath   = CertificateStoreCTRL.StorePath;
            id.Certificate = CertificatesCTRL.SelectedCertificate;
            return(id);
        }
Beispiel #2
0
        private void CertificateStoreCTRL_StoreChanged(object sender, EventArgs e)
        {
            try
            {
                CertificateStoreIdentifier store = new CertificateStoreIdentifier();
                store.StoreType = CertificateStoreCTRL.StoreType;
                store.StorePath = CertificateStoreCTRL.StorePath;
                CertificatesCTRL.Initialize(store, null);

                FilterBTN_Click(sender, e);
            }
            catch (Exception exception)
            {
                GuiUtils.HandleException(this.Text, MethodBase.GetCurrentMethod(), exception);
            }
        }
Beispiel #3
0
        private void FilterBTN_Click(object sender, EventArgs e)
        {
            try
            {
                CertificateListFilter filter = new CertificateListFilter();
                filter.SubjectName = SubjectNameTB.Text.Trim();
                filter.IssuerName  = IssuerNameTB.Text.Trim();
                filter.Domain      = DomainTB.Text.Trim();
                filter.PrivateKey  = PrivateKeyCK.Checked;

                List <CertificateListFilterType> types = new List <CertificateListFilterType>();

                if (ApplicationCK.Checked)
                {
                    types.Add(CertificateListFilterType.Application);
                }

                if (CaCK.Checked)
                {
                    types.Add(CertificateListFilterType.CA);
                }

                if (SelfSignedCK.Checked)
                {
                    types.Add(CertificateListFilterType.SelfSigned);
                }

                if (IssuedCK.Checked)
                {
                    types.Add(CertificateListFilterType.Issued);
                }

                if (types.Count > 0)
                {
                    filter.CertificateTypes = types.ToArray();
                }

                CertificatesCTRL.SetFilter(filter);
            }
            catch (Exception exception)
            {
                GuiUtils.HandleException(this.Text, MethodBase.GetCurrentMethod(), exception);
            }
        }