private void readDatabase() { listTypBudynku = new List <SQL.Typ_Budynku>(); using (SQL.TowerDefenceDataContext db = new SQL.TowerDefenceDataContext()) { var data = from t in db.Typ_Budynkus select new { Id = t.IdTypuBudynku, Nazwa = t.Nazwa, Max_Lvl = t.MaksymalnyPoziomRozwoju, Zasieg = t.ZasiegAtaku, Szybkosc = t.SzybkoscAtaku }; foreach (var detail in data) { SQL.Typ_Budynku tmp = new SQL.Typ_Budynku(); tmp.IdTypuBudynku = detail.Id; tmp.Nazwa = detail.Nazwa; tmp.MaksymalnyPoziomRozwoju = detail.Max_Lvl; tmp.ZasiegAtaku = detail.Zasieg; tmp.SzybkoscAtaku = detail.Szybkosc; listTypBudynku.Add(tmp); } dataGrid.ItemsSource = data; } }
private void dodajNowyTypBudynku(object sender, RoutedEventArgs e) { if (tB_nazwa_insert.Text.Length != 0 && tB_mpr_insert.Text.Length != 0 && tB_za_insert.Text.Length != 0 && tB_sa_insert.Text.Length != 0) { string nazwa = tB_nazwa_insert.Text; int mpr; bool x1 = int.TryParse(tB_mpr_insert.Text, out mpr); float za; bool x2 = float.TryParse(tB_za_insert.Text, out za); float sa; bool x3 = float.TryParse(tB_sa_insert.Text, out sa); if (x1 && x2 && x3) { using (SQL.TowerDefenceDataContext db = new SQL.TowerDefenceDataContext()) { SQL.Typ_Budynku ord = new SQL.Typ_Budynku { Nazwa = nazwa, MaksymalnyPoziomRozwoju = mpr, ZasiegAtaku = za, SzybkoscAtaku = sa }; db.Typ_Budynkus.InsertOnSubmit(ord); try { db.SubmitChanges(); } catch (Exception ex) { MessageBox.Show("Błąd: " + ex.Message); } } } else { MessageBox.Show("Błąd: Niepoprawne typy danych"); } } else { MessageBox.Show("Błąd: Pusta wartość"); } readDatabase(); dataGrid.SelectedItems.Clear(); object item = dataGrid.Items[listTypBudynku.Count - 1]; dataGrid.SelectedItem = item; DataGridRow row = dataGrid.ItemContainerGenerator.ContainerFromIndex(listTypBudynku.Count - 1) as DataGridRow; if (row == null) { dataGrid.ScrollIntoView(item); row = dataGrid.ItemContainerGenerator.ContainerFromIndex(listTypBudynku.Count - 1) as DataGridRow; } }