public static ReoGridFullControl GetGridControl() { var ReoGridControl = new ReoGridFullControl(false); ReoGridControl.GridControl.bottomPanel.Visible = false; var stacks = ReoGridControl.Children.Where(x => x is StackLayout).ToList(); foreach (var stack in stacks) { stack.Visible = false; } return(ReoGridControl); }
void Init() { Padding = new Eto.Drawing.Padding(10); gridcontrol = GridControl.GetGridControl(); Extensions2.AddButtonWithLabel(this, "Reset/Rebuild Element Matrix", "Reset", (btn, e) => { greactor.CreateElementMatrix(); Application.Instance.Invoke(() => Populate()); }); Extensions2.AddButtonWithLabel(this, "Update/Save Matrix Changes", "Save", (btn, e) => { Application.Instance.Invoke(() => Save()); }); this.Add(gridcontrol); Populate(); }
private void DisplayPage_DisplayData() { var page = new WizardPage(); page.hasBackButton = true; page.hasCancelButton = true; page.hasNextButton = true; page.hasFinishButton = false; page.cancelAction = () => { page.Close(); }; page.backAction = () => { Application.Instance.Invoke(() => DisplayPage_LoadData()); page.Close(); }; page.Title = "Neural Network Model Wizard"; page.HeaderTitle = "Step 3 - Select Data"; page.HeaderDescription = "Select the Data to Train/Test the ANN Model"; page.FooterText = "Click and Drag over the Cells to Select a Data Range and Click 'Next' to Continue."; var dl = c.GetDefaultContainer(); dl.Width = Width; var ReoGridControl = new ReoGridFullControl(false) { Size = new Size(Width, Height) }; ReoGridControl.GridControl.bottomPanel.Visible = false; var stacks = ReoGridControl.Children.Where(x => x is StackLayout).ToList(); foreach (var stack in stacks) { stack.Visible = false; } dl.CreateAndAddControlRow(ReoGridControl); page.nextAction = () => { page.Close(); var sheet = ReoGridControl.GridControl.CurrentWorksheet; int firstcol, lastcol, firstrow, lastrow; firstcol = sheet.SelectionRange.Col; lastcol = sheet.SelectionRange.EndCol; firstrow = sheet.SelectionRange.Row; lastrow = sheet.SelectionRange.EndRow; double d; bool hasheaders = !Double.TryParse(sheet.Cells[firstrow, firstcol].Data.ToString(), out d); CurrentModel.Parameters.Labels = new List <string>(); CurrentModel.Data = new List <List <double> >(); if (hasheaders) { for (int i = firstcol; i <= lastcol; i++) { CurrentModel.Parameters.Labels.Add(sheet.Cells[firstrow, i].Data.ToString()); } int counter = 0; for (int i = firstrow + 1; i <= lastrow; i++) { CurrentModel.Data.Add(new List <double>()); for (int j = firstcol; j <= lastcol; j++) { CurrentModel.Data[counter].Add(sheet.Cells[i, j].Data.ToString().ToDoubleFromCurrent()); } counter += 1; } } else { for (int i = firstcol; i <= lastcol; i++) { CurrentModel.Parameters.Labels.Add("Column" + i.ToString()); } int counter = 0; for (int i = firstrow; i <= lastrow; i++) { CurrentModel.Data.Add(new List <double>()); for (int j = firstcol; j <= lastcol; j++) { CurrentModel.Data[counter].Add(sheet.Cells[i, j].Data.ToString().ToDoubleFromCurrent()); } counter += 1; } } Application.Instance.Invoke(() => DisplayPage_LabelData()); }; page.Init(Width, Height); page.Topmost = false; page.ContentContainer.Add(dl); page.Show(); if (File.Exists(CurrentModel.DataSourcePath)) { DWSIM.UI.Forms.Forms.LoadingData f = null; f = new DWSIM.UI.Forms.Forms.LoadingData(); f.loadingtext.Text = "Loading Data, Please Wait..."; f.Title = "Loading Data Source"; f.Show(); Application.Instance.AsyncInvoke(() => { try { ReoGridControl.GridControl.Load(CurrentModel.DataSourcePath); ReoGridControl.GridControl.CurrentWorksheet.SetRows(ReoGridControl.GridControl.CurrentWorksheet.MaxContentRow); ReoGridControl.GridControl.CurrentWorksheet.SetCols(ReoGridControl.GridControl.CurrentWorksheet.MaxContentCol); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error reading data source", MessageBoxType.Error); } finally { f.Close(); } }); } else { MessageBox.Show("You didn't select a data source to open. Please go back and try again.", "Error reading data source", MessageBoxType.Error); } }
public Spreadsheet(Flowsheet fs) { Columns.AddRange(new[] { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" }); flowsheet = fs; scontrol = new ReoGridFullControl(); Sheet = scontrol.GridControl; SetCustomFunctions(); flowsheet.GetSpreadsheetObjectFunc = () => { return(Sheet); }; Sheet.CurrentWorksheet.Name = "MAIN"; scontrol.ImportDataMenuItem.Click += (sender, e) => { Application.Instance.Invoke(() => { var selector = new PropertySelector() { Flowsheet = flowsheet, ObjList = ObjList }; selector.btnOK.Click += (sender2, e2) => { var units = ""; if (selector.list4.SelectedValue != null) { units = selector.list4.SelectedValue.ToString(); } Sheet.CurrentWorksheet.Cells[Sheet.CurrentWorksheet.SelectionRange.StartPos].Formula = String.Format("GETPROPVAL({3}{1}{3}{0}{3}{2}{3}{0}{3}{4}{3})", ';', selector.list2.SelectedKey, selector.list3.SelectedKey, '"', units); selector.Close(); Sheet.CurrentWorksheet.EndEdit(EndEditReason.Cancel); }; selector.ShowModal(); }); }; scontrol.ExportDataMenuItem.Click += (sender, e) => { Application.Instance.Invoke(() => { var selector = new PropertySelector() { Flowsheet = flowsheet, ObjList = ObjList }; selector.btnOK.Click += (sender2, e2) => { var units = ""; if (selector.list4.SelectedValue != null) { units = selector.list4.SelectedValue.ToString(); } var scell = Sheet.CurrentWorksheet.Cells[Sheet.CurrentWorksheet.SelectionRange.StartPos]; var currdata = scell.Formula == null ? scell.Data : scell.Formula; scell.Formula = String.Format("SETPROPVAL({3}{1}{3}{0}{3}{2}{3}{0}{3}{4}{3}{0}{3}{5}{3})", ';', selector.list2.SelectedKey, selector.list3.SelectedKey, '"', currdata, units); selector.Close(); Sheet.CurrentWorksheet.EndEdit(EndEditReason.Cancel); }; selector.ShowModal(); }); }; scontrol.CreateChartMenuItem.Click += (sender, e) => { Application.Instance.Invoke(() => { CreateChartFromRange(sender, e); }); }; }