private void button2_Click(object sender, EventArgs e) { if (Kolone.SelectedItems.Count > 0) { Kolone k = (Kolone)Kolone.SelectedItem; List <Kolone> kolones = new List <Kolone>(); foreach (Kolone a in Kolone.Items) { if (a.ID != null && a.ID != k.ID) { kolones.Add(new Kolone { ID = a.ID, Naziv = a.Naziv }); } } List <Kolone> kolonezaPrikazat = new List <Kolone>(); foreach (Kolone a in KoloneZaprikaz.Items) { kolonezaPrikazat.Add(new Kolone { ID = a.ID, Naziv = a.Naziv }); } kolonezaPrikazat.Add(new Class.Kolone { ID = k.ID, Naziv = k.Naziv }); KoloneZaprikaz.DataSource = null; KoloneZaprikaz.Items.Clear(); KoloneZaprikaz.DataSource = kolonezaPrikazat; KoloneZaprikaz.DisplayMember = "Naziv"; KoloneZaprikaz.ValueMember = "ID"; Kolone.DataSource = null; Kolone.Items.Clear(); Kolone.DataSource = kolones; Kolone.DisplayMember = "Naziv"; Kolone.ValueMember = "ID"; } }
//Load Document private void MenuItem_Click(object sender, RoutedEventArgs e) { OpenFileDialog openfile = new OpenFileDialog(); openfile.DefaultExt = ".xml"; openfile.Filter = "(.xml)|*xml"; //openfile.ShowDialog(); var browsefile = openfile.ShowDialog(); if (browsefile == true) { try { var path = openfile.FileName; EDITOR_SCREEN.Children.Clear(); EDITOR_SCREEN.UpdateLayout(); var xmlStr = File.ReadAllText(@path); var str = XElement.Parse(xmlStr); foreach (var item in str.Elements()) { if (item.Name.LocalName.ToString() == "DATABASE") { ((App)App.Current).Server = item.Attribute("INSTANCE").Value.ToString(); ((App)App.Current).DatabaseName = item.Attribute("DATABAZA").Value.ToString(); MyIntances.Items.Add(new ComboBoxItem { Content = ((App)App.Current).DatabaseName }); } else if (item.Name.LocalName.ToString() == XMLCREATOR.TEKST) { var txt = new Text(); var top = item.Attribute(XMLCREATOR.TOP).Value.ToString(); txt.Txt.Text = item.Attribute("VALUE").Value.ToString(); Canvas.SetTop(txt, double.Parse(top)); Canvas.SetLeft(txt, double.Parse(item.Attribute(XMLCREATOR.LEFT).Value.ToString())); txt.Width = double.Parse(item.Attribute(XMLCREATOR.WIDTH).Value); txt.Height = double.Parse(item.Attribute(XMLCREATOR.HEIGHT).Value.ToString()); EDITOR_SCREEN.Children.Add(txt); } else if (item.Name.LocalName.ToString() == XMLCREATOR.FIELD) { var f = new Field(); Canvas.SetTop(f, double.Parse(item.Attribute(XMLCREATOR.TOP).Value.ToString())); Canvas.SetLeft(f, double.Parse(item.Attribute(XMLCREATOR.LEFT).Value.ToString())); f.DataBaseData = new Tuple <string, string>(item.Elements("DB").FirstOrDefault().Attribute("TN").Value.ToString(), item.Elements("DB").FirstOrDefault().Attribute("CN").Value.ToString()); f.LblName.Content = f.DataBaseData.Item2; f.Width = double.Parse(item.Attribute(XMLCREATOR.WIDTH).Value); f.Height = double.Parse(item.Attribute(XMLCREATOR.HEIGHT).Value); EDITOR_SCREEN.Children.Add(f); } else if (item.Name.LocalName.ToString() == XMLCREATOR.TABELE) { var t = new Tabele(); Canvas.SetTop(t, double.Parse(item.Attribute(XMLCREATOR.TOP).Value.ToString())); Canvas.SetLeft(t, double.Parse(item.Attribute(XMLCREATOR.LEFT).Value.ToString())); t.Width = double.Parse(item.Attribute(XMLCREATOR.WIDTH).Value); t.Height = double.Parse(item.Attribute(XMLCREATOR.HEIGHT).Value); foreach (XElement colums in item.Element(XMLCREATOR.COLUMNS).Elements()) { var kol = new Kolone(); t.Container.ColumnDefinitions.Add(new ColumnDefinition()); Grid.SetColumn(kol, t.Container.ColumnDefinitions.Count - 1); if (colums.Elements("DB").FirstOrDefault() != null) { kol.FieldColumn.DataBaseData = new Tuple <string, string>(colums.Elements("DB").FirstOrDefault().Attribute("TN").Value.ToString(), colums.Elements("DB").FirstOrDefault().Attribute("CN").Value.ToString()); kol.FieldColumn.LblName.Content = kol.FieldColumn.DataBaseData.Item2; } else { var rows = colums.Element("FX").Elements().ToList(); var e1 = new DataExpression(); e1.ColumnName = new Tuple <string, string>(rows[0].Attribute("TN").Value, rows[0].Attribute("CN").Value); var OPERATOR = rows[1].Value; var e2 = new DataExpression(); e2.ColumnName = new Tuple <string, string>(rows[2].Attribute("TN").Value, rows[2].Attribute("CN").Value); if (OPERATOR == "+") { var a = new AddExpression(e1, e2); kol.FieldColumn.Exp = a; kol.FieldColumn.LblName.Content = a.getFunctionAsString(); } else if (OPERATOR == "*") { var a = new MultipleExpression(e1, e2); kol.FieldColumn.Exp = a; kol.FieldColumn.LblName.Content = a.getFunctionAsString(); } else if (OPERATOR == "-") { var a = new SubstractExpression(e1, e2); kol.FieldColumn.Exp = a; kol.FieldColumn.LblName.Content = a.getFunctionAsString(); } else if (OPERATOR == "/") { var a = new MultipleExpression(e1, e2); kol.FieldColumn.Exp = a; kol.FieldColumn.LblName.Content = a.getFunctionAsString(); } } kol.ColHeader.Text = colums.Attribute(XMLCREATOR.COLUMN_HEADER).Value.ToString(); if (colums.Attribute("TOT") != null) { if (colums.Attribute("TOT").Value.ToString() == "True") { kol.HasTotal = true; } } t.Container.Children.Add(kol); } EDITOR_SCREEN.Children.Add(t); } //schema DATA else if (item.Name.LocalName == "SCHEMA") { SchemaCreator.CurrentChoise = new TableRelationShips(); SchemaCreator.CurrentChoise.Parent_Table = item.Attribute("PT").Value.ToString(); SchemaCreator.CurrentChoise.ParentKey = item.Attribute("PK").Value.ToString(); SchemaCreator.CurrentChoise.Child_Table = item.Attribute("CT").Value.ToString(); SchemaCreator.CurrentChoise.ChildKey = item.Attribute("PK").Value.ToString(); SchemaCreator.CurrentChoise.MAIN_KEY.Key = item.Attribute("FILTER").Value.ToString(); try { ((App)App.Current).Server = item.Attribute("INSTANCE").Value.ToString(); ((App)App.Current).DatabaseName = item.Attribute("DATABASE").Value.ToString(); } catch { } var nextlist = item.Element("NEXT").Elements().ToList(); foreach (var item2 in nextlist) { var pt = item2.Attribute("PT").Value.ToString(); var pk = item2.Attribute("PK").Value.ToString(); var ct = item2.Attribute("CT").Value.ToString(); var cky = item2.Attribute("CK").Value.ToString(); SchemaCreator.CurrentChoise.NextRelationShips.Add(new TableRelationShips { Parent_Table = pt, ParentKey = pk, Child_Table = ct, ChildKey = cky }); } SchemaCreator.CurrentChoise.LoadColums(); } } } catch (Exception xe) { MessageBox.Show("Dokumenti nuk mund te hapet, mund te jete korruptuar ose formati nuk eshte i sakte !"); } } }