private void btnDelete_Click(object sender, RoutedEventArgs e)
 {
     if (MessageBox.Show("Вы действительно хотите удалить этот элемент?", "Подтвердите действие", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
     {
         Accomplice a = dataGrid.SelectedItem as Accomplice;
         if (sqlWorker.deleteItemById("Accomplice", a.Id))
         {
             al.deleteById(a.Id);
         }
         else
         {
             MessageBox.Show("Ошибка удаления элемента, возможно он уже используется.");
         }
     }
 }
        public SelectAccomplice(SqliteWorker _sqlWorker, AccompliceList accompliceList)
        {
            InitializeComponent();

            lbChoosed.AutoGenerateColumns    = false;
            lbChoosed.IsReadOnly             = true;
            lbNotChoosed.AutoGenerateColumns = false;
            lbNotChoosed.IsReadOnly          = true;

            sqlWorker = _sqlWorker;

            aList = new AccompliceList(
                DataWorker.getAccompliceList(
                    sqlWorker.selectData("SELECT R.shortName as rank, S.shortName as subUnit, SF.shortName as battalion, M.shortName as militaryUnit, A.*, R.priority " +
                                         "FROM Accomplice A " +
                                         "INNER JOIN SubUnit S ON S.idSubUnit = A.idSubUnit " +
                                         "LEFT JOIN Rank R ON R.idRank = A.idRank " +
                                         "LEFT JOIN SubUnit SF ON S.idFKSubUnit = SF.idSubUnit " +
                                         "LEFT JOIN MilitaryUnit M ON M.idMilitaryUnit = S.idMilitaryUnit OR M.idMilitaryUnit = SF.idMilitaryUnit " +
                                         "")));//сортировка хз по чему
            if (accompliceList == null)
            {
                aChoosedList = new AccompliceList();
            }
            else
            {
                aChoosedList = accompliceList;
                for (int i = 0; i < accompliceList.values.Count; i++)
                {
                    aList.deleteById(accompliceList.values[i].Id);
                }
            }
            aChoosedView         = new CollectionViewSource();
            aChoosedView.Source  = aList.values;
            aChoosedView.Filter += collectView_Filter;

            lbChoosed.ItemsSource    = aChoosedList.values;
            lbNotChoosed.ItemsSource = aChoosedView.View;

            txFilter.Focus();
        }