private void button4_Click(object sender, EventArgs e)
        {
            if (bindingSource1.Count > 0)
            {
                этапы oldRow   = bindingSource1.Current as этапы;
                int   oldIndex = bindingSource1.Position;

                int oldPor = oldRow.порядок;
                if (bindingSource1.Position > 0)
                {
                    bindingSource1.MovePrevious();

                    этапы lastRow = bindingSource1.Current as этапы;
                    int   lastPor = lastRow.порядок;
                    oldRow.порядок  = lastPor;
                    lastRow.порядок = oldPor;
                    //       этапы_деталейЛист.Sort((a, b) => a.порядок.CompareTo(b.порядок));
                    bindingSource1.Sort = "порядок";
                    dataGridView1.Refresh();

                    label1.Visible = true;
                }
            }
            dataGridView1.Focus();
        }
Ejemplo n.º 2
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 этапы;
                    //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 button6_Click(object sender, EventArgs e)
        {
            //   дистанции oldДистанции = клДистанция.deRow;
            клДистанция.выбран = false;
            выбор_кода_дистанции выборДистанции = new выбор_кода_дистанции();

            выборДистанции.ShowDialog();



            if (клДистанция.выбран || выборДистанции.DialogResult == true)
            {
                Guid        кодНов    = (Guid)выборДистанции.Tag;
                string      sqlString = "select наимен, судья, порядок from этапы where дистанция = @p0  order by порядок";
                List <temp> tempList  = de.Database.SqlQuery <temp>(sqlString, кодНов).ToList();

                //    Guid кодНов = dRow.дистанция;
                //востановление
                //клДистанция.deRow = oldДистанции;
                //клДистанция.дистанция = клДистанция.deRow.дистанция;
                //клДистанция.наимен = клДистанция.deRow.наимен;
                //клДистанция.вид = клДистанция.deRow.вид;
                этапыList.Clear();
//                de.этапы.Local.Clear();
                //de.SaveChanges();
                //viewSource1.View.Refresh();
                //        var query = de.этапы.Where(n => n.дистанция == кодНов).OrderBy(n => n.порядок).ToList();
                // тоже становятся локальными

                foreach (temp eRow in tempList)
                {
                    этапы newRow = new этапы()
                    {
                        дистанция = клДистанция.дистанция,
                        наимен    = eRow.наимен,
                        порядок   = eRow.порядок,
                        судья     = eRow.судья,
                        этап      = Guid.NewGuid()
                    };
                    этапыList.Add(newRow);
//                    de.этапы.Local.Add(newRow);

//                    bindingSource1.Add(newRow);
                    //   Console.WriteLine(newRow.наимен);
                }
                //de.SaveChanges();
                //de.этапы.Where(n => n.дистанция == клДистанция.дистанция).OrderBy(n => n.порядок).Load();
                //viewSource1.Source = de.этапы.Local.ToBindingList();
                //dataGrid1.ItemsSource = viewSource1.View;

                label1.Visible = true;
                //   viewSource1.View.Refresh();
                //  viewSource1.Source = null;
                //viewSource1.Source = de.этапы.Local.ToBindingList();
                //dataGrid1.ItemsSource = viewSource1.View;
                //  Close();
            }
        }
 private void button2_Click(object sender, EventArgs e)
 {
     if (bindingSource1.Count > 0)
     {
         этапы tRow = bindingSource1.Current as этапы;
         if (tRow.штрафы.Count == 0)
         {
             bindingSource1.RemoveCurrent();
         }
         else
         {
             MessageBox.Show("Преварительно удалите штрафы этого этапа");
         }
     }
 }
Ejemplo n.º 5
0
        private void View_CurrentChanging(object sender, CurrentChangingEventArgs e)
        {
            var   строка = viewSource1.View.CurrentItem;
            этапы eRow   = viewSource1.View.CurrentItem as этапы;

            if (eRow != null)
            {
                if (String.IsNullOrWhiteSpace(eRow.наимен))
                {
                    MessageBox.Show("Наименование не может быть пустым//////////");
                    //  e.Cancel = true;
                    viewSource1.View.MoveCurrentTo(строка);
                    viewSource1.View.Refresh();
                }
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            int maxPor = 0;

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

            bindingSource1.Position = строка;
        }
Ejemplo n.º 7
0
        private void Удалить_Click(object sender, RoutedEventArgs e)
        {
            if (!viewSource1.View.IsEmpty)
            {
                этапы delRow = viewSource1.View.CurrentItem as этапы;
                if (delRow != null)
                {
                    if (delRow.штрафов == 0)
                    {
                        de.этапы.Local.Remove(delRow);

                        label1.Visibility = Visibility;
                    }
                    else
                    {
                        MessageBox.Show("Предварительно удалите штрафы  этого этапа");
                    }
                }
            }
            dataGrid1.Focus();
        }
Ejemplo n.º 8
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();
        }