Ejemplo n.º 1
0
 /// <summary>
 /// Удаление Покатушки
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void DeleteRandonnee_Click(object sender, RoutedEventArgs e)
 {
     randonnee = (Randonnee)ListViewRandonnee.SelectedItem;
     if (randonnee != null)
     {
         if (randonnee.Connection != null)
         {
             foreach (var v in randonnee.Connection)
             {
                 v.Connection.Remove(randonnee);
             }
         }
         listRandonnee.Remove(randonnee);
         CreateConnection();
         ListViewRandonnee.ItemsSource = null;
         ListViewRandonnee.ItemsSource = listRandonnee;
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Добавить связь для Члена клуба
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void AddConectionMember_Click(object sender, RoutedEventArgs e)
        {
            if (MembersFromRandonnees.SelectedItem != null)
            {
                AddConnection addConnection = new AddConnection();
                item = (TreeViewItem)MembersFromRandonnees.SelectedItem;
                foreach (var v in listBiker)
                {
                    if (item.Header.ToString() == v.FIO.ToString())
                    {
                        biker = v;
                    }
                }
                ;
                List <Randonnee> randonnees = new List <Randonnee>();
                foreach (var it in listRandonnee)
                {
                    randonnees.Add(it);
                }
                DeleteAllConnectionsInList(randonnees);

                addConnection.StartForMembers(randonnees);
                addConnection.ShowDialog();

                stroka = addConnection.ReternData();
                if (stroka != "")
                {
                    item1 = new TreeViewItem
                    {
                        Header = stroka
                    };
                    foreach (var v in listRandonnee)
                    {
                        if (item1.Header.ToString() == v.Name.ToString())
                        {
                            randonnee = v;
                        }
                    }
                    biker.Connection.Add(randonnee);
                    randonnee.Connection.Add(biker);
                    CreateConnection();
                }
            }
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Нахождение двух связанных элементов по Покатушке
 /// </summary>
 private void FindConnectiveObjectsForRandonnees()
 {
     item  = (TreeViewItem)RandonneesFromMembers.SelectedItem;
     item1 = (TreeViewItem)item.Parent;
     foreach (var r in listRandonnee)
     {
         if (item1.Header.ToString() == r.Name.ToString())
         {
             foreach (var c in r.Connection)
             {
                 if (c.FIO.ToString() == item.Header.ToString())
                 {
                     biker     = c;
                     randonnee = r;
                 }
             }
         }
     }
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Нахождения двух связанных элементов по Члену клуба
 /// </summary>
 private void FindConnectiveObjectsForMembers()
 {
     item  = (TreeViewItem)MembersFromRandonnees.SelectedItem;
     item1 = (TreeViewItem)item.Parent;
     foreach (var b in listBiker)
     {
         if (item1.Header.ToString() == b.FIO.ToString())
         {
             foreach (var c in b.Connection)
             {
                 if (c.Name.ToString() == item.Header.ToString())
                 {
                     biker     = b;
                     randonnee = c;
                 }
             }
         }
     }
 }
Ejemplo n.º 5
0
//Таблица Покатушки
        /// <summary>
        /// Добавление новой Покатушки
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void AddRandonnee_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                AddRandnnees w = new AddRandnnees();
                w.ShowDialog();
                randonnee = w.Start();
                if (randonnee != null)
                {
                    listRandonnee.Add(randonnee);
                    ListViewRandonnee.ItemsSource = null;
                    ListViewRandonnee.ItemsSource = listRandonnee;

                    item = new TreeViewItem
                    {
                        Header = randonnee.Name.ToString()
                    };
                    RandonneesFromMembers.Items.Add(item);
                    Save(nameFile);
                }
            }
            catch (InvalidOperationException) { MessageBox.Show("Не удалось создать новый элемент!", "Ошибка!"); }
        }
Ejemplo n.º 6
0
        delegate void Proc();                                             //процедурный тип для сокращения кода в некоторых местах

//Главное меню
        /// <summary>
        /// Нажата кнопка главного меню "Открыть файл"
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OpenFile_Click(object sender, RoutedEventArgs e)
        {
            openFileDialog = new OpenFileDialog
            {
                InitialDirectory = NameWayFile,
                DefaultExt       = "txt"
            };
            if (openFileDialog.ShowDialog() == true)
            {
                if (openFileDialog.DefaultExt == "txt")
                {
                    listBiker     = new List <Biker>();
                    listRandonnee = new List <Randonnee>();
                    try
                    {
                        using (var reader = new StreamReader(openFileDialog.FileName))
                        {
                            stroka = reader.ReadLine();
                            while (stroka != null && stroka.EndsWith("мес.") == true && listBiker.Count < 100)
                            {
                                biker            = new Biker();
                                m                = stroka.IndexOf("||");
                                biker.FIO        = stroka.Substring(0, m);
                                stroka           = stroka.Substring(m + 2);
                                m                = stroka.IndexOf("||");
                                biker.Bike       = stroka.Substring(0, m);
                                biker.Experience = stroka.Substring(m + 2);
                                listBiker.Add(biker);
                                stroka = reader.ReadLine();
                            }
                            while (stroka != null)
                            {
                                randonnee          = new Randonnee();
                                m                  = stroka.IndexOf("||");
                                randonnee.Name     = stroka.Substring(0, m);
                                stroka             = stroka.Substring(m + 2);
                                m                  = stroka.IndexOf("||");
                                randonnee.Date     = stroka.Substring(0, m);
                                stroka             = stroka.Substring(m + 2);
                                m                  = stroka.IndexOf("||");
                                randonnee.Duration = stroka.Substring(0, m);
                                stroka             = stroka.Substring(m + 2);
                                m                  = stroka.IndexOf("||");
                                randonnee.Distance = stroka.Substring(0, m);
                                m                  = int.Parse(stroka.Substring(m + 2));
                                if (m != 0)
                                {
                                    string[] mas = new string[m];
                                    for (; m > 0; mas[--m] = reader.ReadLine())
                                    {
                                        ;
                                    }
                                    foreach (var b in listBiker)
                                    {
                                        foreach (var v in mas)
                                        {
                                            if (b.FIO.ToString() == v.ToString())
                                            {
                                                randonnee.Connection.Add(b);
                                                b.Connection.Add(randonnee);
                                            }
                                        }
                                    }
                                }
                                listRandonnee.Add(randonnee);
                                stroka = reader.ReadLine();
                            }
                        }
                        ListViewMembers.ItemsSource   = listBiker;
                        ListViewRandonnee.ItemsSource = listRandonnee;
                        CreateConnection();
                        MainMenu.Visibility = Visibility.Hidden;
                        Tables.Visibility   = Visibility.Visible;
                    }
                    catch (ArgumentOutOfRangeException) { MessageBox.Show("Файл поврежден!", "Ошибка!"); }
                    catch (NullReferenceException) { MessageBox.Show("Файл поврежден!", "Ошибка!"); }
                    catch (IOException) { MessageBox.Show("Ошибка файла!", "Ошибка!"); }
                }
                else
                {
                    MessageBox.Show($"Неверный файл", "Ошибка!");
                }
            }
        }