/// <summary> /// show table names of Data import result /// </summary> private void DataHeaderLB_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (DataHeaderLB.SelectedItem != null) { string tableName = DataHeaderLB.SelectedItem as string; DataTable dataTable = dataSet.Tables[dataSet.Tables.IndexOf(tableName)]; DataView dv = new DataView(dataTable); DataDG.ItemsSource = dv; //DataDG.EnableRowVirtualization = false; ChangeStyle style = new ChangeStyle(dataTable, ref DataDG, Standard); style.RefreshStyle(); DataDG.ScrollIntoView(DataDG.Items[0]); DataDG.UpdateLayout(); } }
private void Watchnewdata_Click(object sender, RoutedEventArgs e) { try { TreeNode node = LYTunnelTreeview.SelectedItem as TreeNode; if ((node == null) || (node.Level != 2)) { return; } DataImporter_Excel dataImporter = new DataImporter_Excel(); string path = Runtime.dataPath + "\\ProjectData\\LYTunnel.xls"; DataTable _newdatatable = dataImporter.Import(path, LYTunnelStandard, node.Context); if (_newdatatable.Columns.Count == 0) { StageDef stage = LYTunnelStandard.StageContainer.Find(x => x.Code == node.Parent); DGObjectDef dGObject = stage.DGObjectContainer.Find(x => x.Code == node.Code); if (dGObject != null) { foreach (PropertyMeta meta in dGObject.PropertyContainer) { _newdatatable.Columns.Add(meta.LangStr); } } } string[] distinctcols = new string[(_newdatatable.Columns.Count)]; foreach (DataColumn dataColumn in _newdatatable.Columns) { distinctcols[dataColumn.Ordinal] = dataColumn.ColumnName; } DataView mydataview = new DataView(_newdatatable); _newdatatable = mydataview.ToTable(true, distinctcols); //去重复 datatable_clean(_newdatatable); //去空白行 Comparetables(currenttable, _newdatatable); DataView view = new DataView(_newdatatable); DataDG.ItemsSource = view; ChangeStyle style = new ChangeStyle(_newdatatable, ref DataDG, LYTunnelStandard); style.RefreshStyle(); DataDG.ScrollIntoView(DataDG.Items[0]); DataDG.UpdateLayout(); Statelabel.Content = "校核结果如上,如无误则点击“上传新数据”按钮"; newdatatable = _newdatatable; } catch (Exception ex) { MessageBox.Show("请保存Excel模板文件,并关闭它!"); } }
/// <summary> /// import Data /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void DataTemplateTreeview_SelectedItemChanged(object sender, RoutedEventArgs e) { try { TreeNode node = LYTunnelTreeview.SelectedItem as TreeNode; if ((node == null) || (node.Level != 2)) { return; } StageDef stage = LYTunnelStandard.StageContainer.Find(x => x.Code == node.Parent); DGObjectDef dGObject = stage.DGObjectContainer.Find(x => x.Code == node.Code); Project _prj = Globals.project; Domain _domain = _prj.getDomain(stage.Code); DGObjects objs = _domain.DGObjectsList.Where(x => x.definition.Type == dGObject.Code).FirstOrDefault(); await GetData(objs); if (currenttable.Columns.Count == 0) { if (dGObject != null) { foreach (PropertyMeta meta in dGObject.PropertyContainer) { currenttable.Columns.Add(meta.LangStr); } } } DataView view = new DataView(currenttable); DataDG.ItemsSource = view; DataDG.UpdateLayout(); ChangeStyle style = new ChangeStyle(currenttable, ref DataDG, LYTunnelStandard); style.IDindex = currenttable_IDindex; style.Addattachment(); DataDG.UpdateLayout(); DataDG.ScrollIntoView(DataDG.Items[0]); DataDG.UpdateLayout(); Statelabel.Content = "请查看" + currenttable.TableName + "的所有数据!"; } catch (Exception ex) { MessageBox.Show("读取云端数据发生意外,读取失败!"); } }