private void Edit_Clicked(object sender, EventArgs e)
        {
            var secureItem = sender as ISecureItemVM;

            if (secureItem == null)
            {
                return;
            }

            secureItem.FoldersList = pbData.GetFoldersBySecureItemType();
            SetCountriesValue(secureItem, false);

            AddSecureItemWindow addWindow = new AddSecureItemWindow(CurrentDataTemplateSelector, true)
            {
                Title = secureItem.Name
            };

            addWindow.DataContext = secureItem;
            addWindow.Closing    += (o, args) =>
            {
                if (addWindow.DialogResult == null)
                {
                    args.Cancel = true;
                }

                if (addWindow.DialogResult.HasValue && addWindow.DialogResult.Value)
                {
                    args.Cancel = !secureItem.Validate();
                }
            };
            bool?dialogResult = addWindow.ShowDialog();

            if (dialogResult.Value)
            {
                if (SaveItem(secureItem.CreateSecureItem()))
                {
                    RefreshData();
                    if (DataUpdated != null)
                    {
                        DataUpdated(null, null);
                    }
                }
            }
        }
        public void AddNewItem(ISecureItemVM secureItem)
        {
            if (secureItem == null)
            {
                return;
            }
            SetCountriesValue(secureItem);

            AddSecureItemWindow addWindow = new AddSecureItemWindow(CurrentDataTemplateSelector)
            {
                Title = secureItem.ItemTitel
            };

            addWindow.DataContext = secureItem;
            addWindow.Closing    += (o, args) =>
            {
                if (addWindow.DialogResult == null)
                {
                    args.Cancel = true;
                }

                if (addWindow.DialogResult.HasValue && addWindow.DialogResult.Value)
                {
                    args.Cancel = !secureItem.Validate();
                }
            };
            bool?dialogResult = addWindow.ShowDialog();

            if (dialogResult.Value)
            {
                if (SaveItem(secureItem.CreateSecureItem()))
                {
                    RefreshData();
                }
            }
        }