public PsychrometricsViewModel(bool isDemo, bool isInternationalSystemOfUnits_IS_) { IsInternationalSystemOfUnits_IS_ = isInternationalSystemOfUnits_IS_; IsDemo = isDemo; PsychrometricsInputData = new PsychrometricsInputData(IsDemo, IsInternationalSystemOfUnits_IS_); PsychrometricsOutputData = new PsychrometricsOutputData(IsInternationalSystemOfUnits_IS_); PsychrometricsCalculationLibrary = new PsychrometricsCalculationLibrary(); PsychrometricsData = new PsychrometricsData(); }
public bool CalculatePsychrometrics(bool isElevation, out string errorMessage) { try { if (!FillPsychrometricsData(isElevation, out errorMessage)) { return(false); } if (!PsychrometricsCalculationLibrary.PsychrometricsCalculation(PsychrometricsData, out errorMessage)) { return(false); } PsychrometricsOutputData.FillDataTable(PsychrometricsData); return(true); } catch (Exception exception) { errorMessage = string.Format("Error in Psychrometrics calculation. Please check your input values. Exception Message: {0}", exception.Message); return(false); } }
private void CalculatePsychrometrics() { try { PsychrometricsData = new PsychrometricsData(); // clear data set if (dataGridView1.DataSource != null) { dataGridView1.DataSource = null; } DataTable table = null; string message = string.Empty; if (PyschmetricsElevationRadio.Checked) { if (!PsychrometricsInputData.ElevationDataValue.UpdateValue(Psychrometrics_Elevation_Value.Text, out message)) { MessageBox.Show(message); return; } } else { if (!PsychrometricsInputData.BarometricPressureDataValue.UpdateValue(Psychrometrics_Elevation_Value.Text, out message)) { MessageBox.Show(message); return; } } if (Psychrometrics_DBT_RH.Checked) { if (!PsychrometricsInputData.DryBlubTemperatureDataValue.UpdateValue(Psychrometrics_DBT_Value.Text, out message)) { MessageBox.Show(message); return; } if (!PsychrometricsInputData.RelativeHumitityDataValue.UpdateValue(Psychrometrics_WBT_Value.Text, out message)) { MessageBox.Show(message); return; } } else if (Psychrometrics_Enthalpy.Checked) { if (!PsychrometricsInputData.EnthalpyDataValue.UpdateValue(Psychrometrics_DBT_Value.Text, out message)) { MessageBox.Show(message); return; } } else { if (!PsychrometricsInputData.DryBlubTemperatureDataValue.UpdateValue(Psychrometrics_DBT_Value.Text, out message)) { MessageBox.Show(message); return; } if (!PsychrometricsInputData.WetBlubTemperatureDataValue.UpdateValue(Psychrometrics_WBT_Value.Text, out message)) { MessageBox.Show(message); return; } if (PsychrometricsInputData.DryBlubTemperatureDataValue.Current < PsychrometricsInputData.WetBlubTemperatureDataValue.Current) { MessageBox.Show("The Dry Blub Temperature value must be greater than the Wet Blub Temperature value"); return; } } if (PyschmetricsElevationRadio.Checked) { PsychrometricsData.Elevation = PsychrometricsInputData.ElevationDataValue.Current; } else { PsychrometricsData.BarometricPressure = PsychrometricsInputData.BarometricPressureDataValue.Current; } PsychrometricsData.IsElevation = PyschmetricsElevationRadio.Checked; PsychrometricsData.SetInternationalSystemOfUnits_IS_(InternationalSystemOfUnits_IS_.Checked); if (Psychrometrics_WBT_DBT.Checked) { PsychrometricsData.CalculationType = CalculationType.Psychrometrics_WBT_DBT; PsychrometricsInputData.CalculationType = CalculationType.Psychrometrics_WBT_DBT; PsychrometricsData.TemperatureDryBulb = PsychrometricsInputData.DryBlubTemperatureDataValue.Current; PsychrometricsData.TemperatureWetBulb = PsychrometricsInputData.WetBlubTemperatureDataValue.Current; } else if (Psychrometrics_DBT_RH.Checked) { PsychrometricsData.CalculationType = CalculationType.Psychrometrics_DBT_RH; PsychrometricsInputData.CalculationType = CalculationType.Psychrometrics_DBT_RH; PsychrometricsData.RelativeHumidity = PsychrometricsInputData.RelativeHumitityDataValue.Current; PsychrometricsData.TemperatureDryBulb = PsychrometricsInputData.DryBlubTemperatureDataValue.Current; } else if (Psychrometrics_Enthalpy.Checked) { PsychrometricsData.CalculationType = CalculationType.Psychrometrics_Enthalpy; PsychrometricsInputData.CalculationType = CalculationType.Psychrometrics_Enthalpy; PsychrometricsData.Enthalpy = PsychrometricsInputData.EnthalpyDataValue.Current; } table = PsychrometricsCalculationLibrary.PsychrometricsCalculation(PsychrometricsData); if (table != null) { // Create a DataView using the DataTable. DataView view = new DataView(table); // Set a DataGrid control's DataSource to the DataView. dataGridView1.DataSource = view; } } catch (Exception exception) { MessageBox.Show(string.Format("Error in calculation. Please check your input values. Exception Message: {0}", exception.Message), "Psychrometrics Calculation Error"); } }