コード例 #1
0
        private void btnDbPackage_Click(object sender, EventArgs e)
        {
            try
            {
                var items = _conn.GetItems("ApplyAML", Properties.Resources.Aml_Packages);
                var refs  = new List <ItemReference>();

                foreach (var item in items)
                {
                    refs.Add(ItemReference.FromFullItem(item, true));
                }

                using (var dialog = new FilterSelect <ItemReference>())
                {
                    dialog.DataSource    = refs;
                    dialog.DisplayMember = "KeyedName";
                    dialog.Message       = resources.Messages.PackageSelect;
                    if (dialog.ShowDialog(this) == DialogResult.OK && dialog.SelectedItem != null)
                    {
                        txtFind.Text = "";
                        _findAction  = DefaultFindAction;
                        items        = _conn.GetItems("ApplyAML", string.Format(Properties.Resources.Aml_PackageElements, dialog.SelectedItem.Unique));
                        _availableRefs.Clear();
                        ItemReference newRef;
                        foreach (var item in items)
                        {
                            newRef = new ItemReference()
                            {
                                Type      = item.Element("element_type", ""),
                                Unique    = item.Element("element_id", ""),
                                KeyedName = item.Element("name", "")
                            };
                            if (!_selectedRefs.Contains(newRef))
                            {
                                _selectedRefs.Add(newRef);
                            }
                        }

                        _existingScript       = _existingScript ?? new InstallScript();
                        _existingScript.Title = dialog.SelectedItem.KeyedName;

                        EnsureResultsTab();
                        tbcSearch.SelectedTab = pgResults;
                        txtFind.Focus();
                    }
                }
            }
            catch (Exception ex)
            {
                Utils.HandleError(ex);
            }
        }
コード例 #2
0
 private void btnItem_Click(object sender, EventArgs e)
 {
     try
     {
         using (var dialog = new FilterSelect <ItemReference>())
         {
             EnsureItemTypes();
             dialog.DataSource    = _itemTypes;
             dialog.DisplayMember = "KeyedName";
             dialog.Message       = resources.Messages.ItemTypeSelect;
             if (dialog.ShowDialog(this) == DialogResult.OK && dialog.SelectedItem != null)
             {
                 _lastQuery   = null;
                 txtFind.Text = "";
                 _availableRefs.Clear();
                 var items = _conn.GetItems("ApplyAML", string.Format(Properties.Resources.Aml_ItemGet, dialog.SelectedItem.KeyedName, ""));
                 if (items.Count() >= 1000)
                 {
                     _findAction = () => FindByItem(dialog.SelectedItem.KeyedName);
                     _availableRefs.Add(_searchMessage);
                 }
                 else
                 {
                     ItemReference newRef;
                     _findAction = DefaultFindAction;
                     foreach (var result in items)
                     {
                         newRef = ItemReference.FromFullItem(result, true);
                         if (!_selectedRefs.Contains(newRef))
                         {
                             _availableRefs.Add(newRef);
                         }
                     }
                 }
                 EnsureResultsTab();
                 tbcSearch.SelectedTab = pgResults;
                 txtFind.Focus();
             }
         }
     }
     catch (Exception ex)
     {
         Utils.HandleError(ex);
     }
 }
コード例 #3
0
 private void btnAddItemTypes_Click(object sender, EventArgs e)
 {
     try
     {
         using (var dialog = new FilterSelect <ItemReference>())
         {
             dialog.DataSource    = _availTypes;
             dialog.DisplayMember = "KeyedName";
             dialog.Message       = resources.Messages.ItemTypeSelect;
             if (dialog.ShowDialog(this) == DialogResult.OK && dialog.SelectedItem != null)
             {
                 _selectedTypes.Add(dialog.SelectedItem);
                 _availTypes.Remove(dialog.SelectedItem);
             }
         }
     }
     catch (Exception ex)
     {
         Utils.HandleError(ex);
     }
 }
コード例 #4
0
 private void cboItemTypes_DropDown(object sender, EventArgs e)
 {
     try
     {
         if (cboItemTypes.Items.Count == _cache.ItemTypeCount)
         {
             cboItemTypes.DroppedDown = false;
             using (var dialog = new FilterSelect <ItemType>())
             {
                 dialog.DataSource = (IEnumerable <ItemType>)(cboItemTypes.DataSource);
                 if (dialog.ShowDialog(this) == DialogResult.OK && dialog.SelectedItem != null)
                 {
                     cboItemTypes.SelectedItem = dialog.SelectedItem;
                 }
             }
         }
     }
     catch (Exception ex)
     {
         Utils.HandleError(ex);
     }
 }