public static ExecResult <ElementData> Execute()
        {
            var result = new ExecResult <ElementData>();

            try
            {
                var form = new FSelectObject();
                form.LoadObjects();

                DialogResult res = form.ShowDialog();
                if (res != DialogResult.OK)
                {
                    result.code = (int)res;
                }
                else
                {
                    if (form.lvObjects.SelectedItems.Count > 0)
                    {
                        result.value = (ElementData)(form.lvObjects.SelectedItems[0]).Tag;
                    }
                    else
                    {
                        result.code    = -1;
                        result.message = "Не выбран объект";
                    }
                }
            }
            catch (Exception ex)
            {
                result.setException(ex);
            }

            return(result);
        }
        private void btnSelectSupplier_Click(object sender, EventArgs e)
        {
            var selectObjectResult = FSelectObject.Execute();

            if (selectObjectResult.code == 0)
            {
                tbSupplierID.Text = selectObjectResult.value.ID.ToString() + " (" + Context.ElementData[selectObjectResult.value.ID].DisplayName + ")";
                tbSupplierID.Tag  = selectObjectResult.value.ID;
            }
        }