Пример #1
0
        public override Object EditValue(ITypeDescriptorContext context, IServiceProvider provider, Object value)
        {
            if ((context != null) && (provider != null))
            {
                var svc = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));
                if (svc != null)
                {
                    var externalVault = GetExternalVault(context, value);
                    if (externalVault == null)
                    {
                        var fmt = GetVaultFormat(context, value);
                        var uri = GetUri(context, value);

                        if (uri != null)
                        {
                            using (var browser = new DataVaultBrowserForm(fmt, uri))
                            {
                                browser.Approver = ApproveSelection;
                                if (svc.ShowDialog(browser) == DialogResult.OK)
                                {
                                    value = browser.SelectedElement;
                                }
                            }
                        }
                        else
                        {
                            // just do nothing - crash is an unsuitable behavior here
                        }
                    }
                    else
                    {
                        using (var browser = new DataVaultBrowserForm(externalVault))
                        {
                            browser.Approver = ApproveSelection;
                            if (svc.ShowDialog(browser) == DialogResult.OK)
                            {
                                value = browser.SelectedElement;
                            }
                        }
                    }
                }
            }

            return(base.EditValue(context, provider, value));
        }
Пример #2
0
        public override Object EditValue(ITypeDescriptorContext context, IServiceProvider provider, Object value)
        {
            if ((context != null) && (provider != null))
            {
                var svc = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));
                if (svc != null)
                {
                    var externalVault = GetExternalVault(context, value);
                    if (externalVault == null)
                    {
                        var fmt = GetVaultFormat(context, value);
                        var uri = GetUri(context, value);

                        if (uri != null)
                        {
                            using (var browser = new DataVaultBrowserForm(fmt, uri))
                            {
                                browser.Approver = ApproveSelection;
                                if (svc.ShowDialog(browser) == DialogResult.OK)
                                {
                                    value = browser.SelectedElement;
                                }
                            }
                        }
                        else
                        {
                            // just do nothing - crash is an unsuitable behavior here
                        }
                    }
                    else
                    {
                        using (var browser = new DataVaultBrowserForm(externalVault))
                        {
                            browser.Approver = ApproveSelection;
                            if (svc.ShowDialog(browser) == DialogResult.OK)
                            {
                                value = browser.SelectedElement;
                            }
                        }
                    }
                }
            }

            return base.EditValue(context, provider, value);
        }
Пример #3
0
		private void buttonFromRepository_Click(object sender, EventArgs e)
		{
			var text = "";
			using (var repo = RepositoryEditor.Repository())
			{
				var dvbf = new DataVaultBrowserForm(repo) {Approver = Acceptor, StartPosition = FormStartPosition.CenterScreen,};
				if (dvbf.ShowDialog(this) == DialogResult.OK)
				{
					var element = dvbf.SelectedElement as IValue;
					text = element.ContentString;
				}
			}
			_value = null;
			Value = text;
		}