Beispiel #1
0
        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 дистанции;
                    (oldRow.порядок, lastRow.порядок) = (lastRow.порядок, oldRow.порядок);
                    //int lastPor = lastRow.порядок;
                    //oldRow.порядок = lastPor;
                    //lastRow.порядок = oldPor;
                    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();
        }
Beispiel #2
0
        private void новая_Click(object sender, RoutedEventArgs e)
        {
            список_видов выборВида = new список_видов();

            выборВида.Выход.Content     = " Отмена";
            выборВида.Title             = " Выберите вид";
            выборВида.наимен_слета.Text = выборВида.Title;
            выборВида.ShowDialog();
            if (выборВида.DialogResult == true)
            {
                виды vRow   = de.виды.Single(n => n.вид == клВид.вид);
                int  maxPor = 0;
                if (de.дистанции.Local.Any())
                {
                    maxPor = de.дистанции.Local.Max(n => n.порядок);
                }
                дистанции newRow = new дистанции
                {
                    наимен    = "Новая",
                    порядок   = maxPor + 1,
                    дистанция = Guid.NewGuid(),
                    вид       = клВид.вид,
                    слет      = клСлет.слет,
                    виды      = vRow
                };
                de.дистанции.Local.Add(newRow);
                // дистанцииList.Add(newRow);
                viewSource1.View.MoveCurrentTo(newRow);
                viewSource1.View.Refresh();
            }
            dataGrid1.Focus();
        }
Beispiel #3
0
        private void выбор_Click(object sender, RoutedEventArgs e)
        {
            if (treeView1.Items.Count > 0 && treeView1.SelectedItem != null)
            {
                TreeViewItem node = (TreeViewItem)treeView1.SelectedItem;
                if (node.Tag is дистанции)
                {
                    дистанции ddd = (дистанции)node.Tag;
                    this.Tag = ddd.дистанция;

                    //клДистанция.deRow = (дистанции)node.Tag;
                    //клДистанция.дистанция = клДистанция.deRow.дистанция;
                    //клДистанция.наимен = клДистанция.deRow.наимен;

                    //клДистанция.выбран = true;
                    this.DialogResult = true;
                }

                //TreeViewItem item0 = (TreeViewItem)treeView1.Items[0];
                //item0.IsSelected = true;
            }


            Close();
        }
Beispiel #4
0
 private void Выбор_Click(object sender, RoutedEventArgs e)
 {
     if (!viewSource1.View.IsEmpty)
     {
         дистанции dRow = viewSource1.View.CurrentItem as дистанции;
         клДистанция.deRow     = dRow;
         клДистанция.дистанция = dRow.дистанция;
         клДистанция.наимен    = dRow.наимен;
         this.DialogResult     = true;
     }
     Close();
 }
Beispiel #5
0
 private void Удалить_Click(object sender, RoutedEventArgs e)
 {
     if (!viewSource1.View.IsEmpty)
     {
         дистанции delRow = viewSource1.View.CurrentItem as дистанции;
         if (delRow != null)
         {
             if (delRow.этапов == 0 && delRow.экипажей == 0)
             {
                 de.дистанции.Local.Remove(delRow);
                 //    дистанцииList.Remove(delRow);
                 label1.Visibility = Visibility;
                 viewSource1.View.Refresh();
             }
             else
             {
                 MessageBox.Show("Предварительно удалите этапы и экипажи этой дистанции");
             }
         }
     }
 }
Beispiel #6
0
        private void новая_Click(object sender, RoutedEventArgs e)
        {
            int maxPor = 0;

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

            de.этапы.Local.Add(newRow);
            viewSource1.View.MoveCurrentTo(newRow);
            dataGrid1.Focus();
        }
Beispiel #7
0
        private void окно1результатов_Load(object sender, EventArgs e)
        {
            deДистанция  = клДистанция.deRow;
            кодДистанции = deДистанция.дистанция;
            this.Text    = deДистанция.наимен;
            label2.Text  = this.Text;
            try
            {
                de.экипажи
                //.Where(n => n.дистанция == deДистанция.дистанция)
                .OrderBy(n => n.номер).Load();
                de.результаты
                //.Where(n => n.экипажи.дистанция == deДистанция.дистанция)
                .OrderBy(n => n.порядок).ThenBy(n => n.экипажи.номер).ThenBy(n => n.попытка).Load();
                binList = de.результаты.Local.ToBindingList();


                foreach (экипажи eRow in de.экипажи.Local)
                {
                    if (de.результаты.Local.Where(n => n.экипаж == eRow.экипаж).Count() == 0)
                    {
                        int maxPor = 0;
                        if (de.результаты.Local.Any())
                        {
                            maxPor = de.результаты.Local.Max(n => n.порядок);
                        }
                        результаты newRow = new результаты
                        {
                            итог      = 0,
                            время_сек = 0,
                            время_мин = 0,
                            попытка   = 1,
                            результат = Guid.NewGuid(),
                            секунд    = 0,
                            штраф     = 0,
                            экипаж    = eRow.экипаж,
                            экипажи   = eRow,
                            зачетный  = false,
                            порядок   = maxPor + 1,
                            старт     = DateTime.Today,
                            финиш     = DateTime.Today
                        };


                        binList.Add(newRow);
                    }
                }

                пересчет();

                bindingSource1.DataSource = binList;
                bindingSource1.Sort       = " номер, попытка";
            }
            catch (Exception ex)
            {
                MessageBox.Show("Ошибка загрузки " + ex.Message);
            }
            timer2.Start();
            FormClosing += Список_видов_FormClosing;
            bindingSource1.ListChanged += BindingSource1_ListChanged;
            this.Text                = deДистанция.наимен;
            label2.Text              = this.Text;
            dataGridView1.DataError += DataGridView1_DataError;
            //   dataGridView1.CellMouseDown += DataGridView1_CellMouseDown;
            //  dataGridView1.CellMouseClick += DataGridView1_CellMouseClick;
            timer2.Tick += Timer2_Tick;
            dataGridView1.CellContextMenuStripNeeded += DataGridView1_CellContextMenuStripNeeded;
            dataGridView1.CellMouseClick             += DataGridView1_CellMouseClick;
            dataGridView1.CellPainting += DataGridView1_CellPainting;
        }