/// <summary> /// Akceptuje dopasowanie i łaczy obie tabele w jedną wynikową /// zapisuje dane do listy "tabelkapokazs2 " /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void BT_akceptuj_Click(object sender, RoutedEventArgs e) { tabelkapokazs2 = new List <tabelkapokaz>(); //tworzenie tabeli uzgledniającej dane z obu tabel List <Tabelka_plan> Tabelka_Plans_tmp3 = new List <Tabelka_plan>(); Tabelka_Plans_tmp3.AddRange(Tabelka_Plans); for (int i = 0; i < tabelkapokazs.Count; i++) { Tabelka_plan row2 = Tabelka_Plans.Find(x => x.Dopasuj == tabelkapokazs[i].RIFU_NR); if (row2 != null) { tabelkapokazs2.Add(sprawdzaj_wartosci(tabelkapokazs[i], row2)); Tabelka_Plans_tmp3.Remove(row2); } else { tabelkapokazs2.Add(tabelkapokazs[i]); } } //dodanie tych co pozostały a ich nie było w CAD foreach (Tabelka_plan row2 in Tabelka_Plans_tmp3) { tabelkapokazs2.Add(sprawdzaj_wartosci_i_dodaj(row2)); } this.grid_tabelka_do_zapisu.ItemsSource = tabelkapokazs2; }
/// <summary> /// WKLEJ z clipboard /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void wklej_Click(object sender, RoutedEventArgs e) { List <string[]> wiersze = new List <string[]>(); //Wyczysć istniejace dane Tabelka_Plans.Clear(); //sprawdz czy schowek posiada w sobie text if (!Clipboard.ContainsText()) { return; } // przypisz text ze schowka do zmiennej string text_glowny = Clipboard.GetText(); // podziel linie po znaku końcowym linii dodawanych z excela do danych string[] lines = text_glowny.Split(new[] { "\r\n", Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries); //podzielone linie podziel jeszcze raz na tablice po zmienej \t // i dodaj do listy ktora wyswietlasz w grid foreach (string znak in lines) { string[] lines2 = znak.Split(new[] { "\t", Environment.NewLine }, StringSplitOptions.None); Tabelka_Plans.Add(new Tabelka_plan(lines2)); } foreach (Tabelka_plan row in Tabelka_Plans) { if (!string.IsNullOrEmpty(row.Frequenz)) { row.Frequenz = row.Frequenz.Replace(" GHz", ""); } if (!string.IsNullOrEmpty(row.Frequenz)) { row.Frequenz = row.Frequenz.Replace(" GHZ", ""); } if (!string.IsNullOrEmpty(row.Diameter)) { row.Diameter = row.Diameter.Replace(",00", "0"); } if (!string.IsNullOrEmpty(row.Azimuth)) { row.Azimuth = row.Azimuth.Replace(",", "."); } } Grid_plan.ItemsSource = Tabelka_Plans; Grid_plan.Items.Refresh(); }
/// <summary> /// Scal - scala takie same radiolinie po numerze z literką a jako drugą /// i aktualizuje liste " Tabelka_Plans " /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void scal_Click(object sender, RoutedEventArgs e) { for (int i = 0; i < Tabelka_Plans.Count; i++) { string szukana = Tabelka_Plans[i].Lfd_Nr + "a"; if (Tabelka_Plans.Count(x => x.Lfd_Nr == szukana) > 0) { Tabelka_plan tmp = Tabelka_Plans.First(x => x.Lfd_Nr == szukana); Tabelka_Plans[i].USER_LINK_ID += "/" + tmp.USER_LINK_ID.Substring(tmp.USER_LINK_ID.Length - 4, 4); Tabelka_Plans[i].Ile_odu = "2"; Tabelka_Plans.Remove(tmp); } } Grid_plan.ItemsSource = Tabelka_Plans; Grid_plan.Items.Refresh(); }