DoDataExchange
(
Boolean bFromControls
)
{
if (bFromControls)
{
// Perform error checking.
if (cbxVertexColumnName.Items.Count == 0)
{
OnInvalidComboBox(cbxVertexColumnName,
"There are no columns that can be used.");
return (false);
}
String sVertexColumnName;
if ( !ValidateRequiredComboBox(cbxVertexColumnName,
"Select a column.", out sVertexColumnName)
)
{
return (false);
}
// Error checking passed. Transfer the data.
m_oGroupByVertexAttributeDialogUserSettings.VertexColumnName =
sVertexColumnName;
ExcelColumnFormat eSelectedVertexColumnFormat =
this.SelectedVertexColumnFormat;
m_oGroupByVertexAttributeDialogUserSettings.VertexColumnFormat =
eSelectedVertexColumnFormat;
String sMinimumValues = String.Empty;
switch (eSelectedVertexColumnFormat)
{
case ExcelColumnFormat.Number:
sMinimumValues =
lbxMinimumValues.ItemsToCultureInvariantString<
FormattableNumber, Double>();
break;
case ExcelColumnFormat.Date:
sMinimumValues =
lbxMinimumValues.ItemsToCultureInvariantString<
FormattableDate, DateTime>();
break;
case ExcelColumnFormat.Time:
sMinimumValues =
lbxMinimumValues.ItemsToCultureInvariantString<
FormattableTime, DateTime>();
break;
case ExcelColumnFormat.DateAndTime:
sMinimumValues =
lbxMinimumValues.ItemsToCultureInvariantString<
FormattableDateAndTime, DateTime>();
break;
case ExcelColumnFormat.Other:
break;
default:
Debug.Assert(false);
break;
}
m_oGroupByVertexAttributeDialogUserSettings.MinimumValues =
sMinimumValues;
}
else
{
cbxVertexColumnName.Text =
m_oGroupByVertexAttributeDialogUserSettings.VertexColumnName;
ExcelColumnFormat eSelectedVertexColumnFormat =
m_oGroupByVertexAttributeDialogUserSettings.VertexColumnFormat;
this.SelectedVertexColumnFormat = eSelectedVertexColumnFormat;
String sMinimumValues =
m_oGroupByVertexAttributeDialogUserSettings.MinimumValues;
switch (eSelectedVertexColumnFormat)
{
case ExcelColumnFormat.Number:
lbxMinimumValues.CultureInvariantStringToItems<
FormattableNumber, Double>(sMinimumValues);
break;
case ExcelColumnFormat.Date:
lbxMinimumValues.CultureInvariantStringToItems<
FormattableDate, DateTime>(sMinimumValues);
break;
case ExcelColumnFormat.Time:
lbxMinimumValues.CultureInvariantStringToItems<
FormattableTime, DateTime>(sMinimumValues);
break;
case ExcelColumnFormat.DateAndTime:
lbxMinimumValues.CultureInvariantStringToItems<
FormattableDateAndTime, DateTime>(sMinimumValues);
break;
case ExcelColumnFormat.Other:
break;
default:
Debug.Assert(false);
break;
}
EnableControls();
}
return (true);
}