private void btn_AddKind_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         KindEditPresenter kindEditPresenter = new KindEditPresenter(new KindEditView(), new Kind());
         Kind kind = (Kind)(kindEditPresenter.View.DataContext);
         kindEditPresenter.View.Label_AddOrEditKind.Content = "Dodawanie rodzaju";
         KindPresenter kindPresenter = (KindPresenter)this.DataContext;
         if (kind != null)
         {
             kindEditPresenter.View.ShowDialog();
             if (kindEditPresenter.View.DialogResult == true)
             {
                 kindPresenter.SaveKind(kind, false);
                 kindPresenter.GetAllKinds();
             }
         }
         else
         {
             MessageBox.Show("Wystąpił błąd podczas dodawania rodzaju. Spróbuj ponownie");
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
 private void ChangeCurrentRow(KindPresenter kindPresenter, KindEditPresenter kindpEdit,
   Kind obj)
 {
     Kind subgroup = ((Kind)kindpEdit.View.DataContext);
     obj.id = subgroup.id;
     obj.name = subgroup.name;
     kindPresenter.View.dataGridKinds.Items.Refresh();
 }
 private void btnUpdate_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         KindPresenter kindPresenter = (KindPresenter)this.DataContext;
         Kind kind = new Kind();
         DeepClone.CopyTo((Kind)(kindPresenter.View.dataGridKinds.SelectedItem), kind);
         KindEditPresenter kindEditPresenter = new KindEditPresenter(new KindEditView(), kind);
         kindEditPresenter.View.Label_AddOrEditKind.Content = "Edytowanie rodzaju";
         if (kindEditPresenter.View.ShowDialog() == true)
         {
             kindPresenter.SaveKind(kind, true);
             Kind temp = (Kind)kindPresenter.View.dataGridKinds.SelectedItem;
             ChangeCurrentRow(kindPresenter, kindEditPresenter, temp);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }