private void ClickCatalogContext(object sender, RoutedEventArgs e)
 {
     Models.CatalogItem item = (sender as MenuItem).DataContext as Models.CatalogItem;
     item.Items.Add(new Models.CatalogItem()
     {
         Name = "Neue Kategorie", Parent = item
     });
 }
        private void SetSubCatalogItems(Models.CatalogItem parent)
        {
            foreach (Models.CatalogItem item in parent.Items)
            {
                item.Parent = parent;

                if (!string.IsNullOrEmpty(item._hardwareName))
                {
                    item.Hardware = General.Hardware.First(h => h.Name == item._hardwareName);
                }

                SetSubCatalogItems(item);
            }
        }
 private void ClickCatalogContextRemove(object sender, RoutedEventArgs e)
 {
     Models.CatalogItem item = (sender as MenuItem).DataContext as Models.CatalogItem;
     item.Parent.Items.Remove(item);
 }