private void Удалить_Click(object sender, RoutedEventArgs e)
        {
            if (!viewSource1.View.IsEmpty)
            {
                слеты delRow = viewSource1.View.CurrentItem as слеты;
                if (delRow != null)
                {
                    Guid кодслеты = delRow.слет;
                    //int всегоТуристов = de.туристы.Count(n => n.школа == кодслеты);
                    //int всегоЭкипажей = de.экипажи.Count(n => n.школа == кодслеты);

                    if (delRow.туристов == 0 && delRow.дистанций == 0)
                    {
                        de.слеты.Local.Remove(delRow);

                        label1.Visibility = Visibility;
                    }
                    else
                    {
                        MessageBox.Show("Предварительно удалите туристов и дистанции слета");
                    }
                }
            }
            dataGrid1.Focus();
        }
        private void вНиз_Click(object sender, RoutedEventArgs e)
        {
            if (!viewSource1.View.IsEmpty)
            {
                слеты oldRow = viewSource1.View.CurrentItem as слеты;

                //  int oldPor = oldRow.порядок;
                if (viewSource1.View.CurrentPosition < de.слеты.Local.Count - 1)
                {
                    viewSource1.View.MoveCurrentToNext();
                    слеты lastRow = viewSource1.View.CurrentItem as слеты;
                    //int lastPor = lastRow.порядок;
                    //oldRow.порядок = lastPor;
                    //lastRow.порядок = oldPor;
                    (oldRow.порядок, lastRow.порядок) = (lastRow.порядок, oldRow.порядок);
                    label1.Visibility = Visibility;
                    dataGrid1.Items.Refresh();

                    dataGrid1.Items.SortDescriptions.Clear();

                    dataGrid1.Items.SortDescriptions.Add(new SortDescription("порядок", ListSortDirection.Ascending));
                    viewSource1.View.MoveCurrentToNext();

                    //  viewSource1.View.Refresh();
                }
            }
            dataGrid1.Focus();
        }
        private void новая_Click(object sender, RoutedEventArgs e)
        {
            int maxPor = 0;

            if (de.слеты.Local.Any())
            {
                maxPor = de.слеты.Local.Max(n => n.порядок);
            }
            слеты newRow = new слеты
            {
                наимен  = "Новая",
                порядок = maxPor + 1,
                слет    = Guid.NewGuid(),
                дата_по = DateTime.Today,
                дата_с  = DateTime.Today
            };

            de.слеты.Local.Add(newRow);
            viewSource1.View.MoveCurrentTo(newRow);
            dataGrid1.Focus();
        }