Smrf.NodeXL.ExcelTemplate.NumericComparisonColumnAutoFillUserSettingsTypeConverter.ConvertFrom C# (CSharp) Method

ConvertFrom() public method

public ConvertFrom ( ITypeDescriptorContext context, CultureInfo culture, Object value ) : Object
context ITypeDescriptorContext
culture System.Globalization.CultureInfo
value Object
return Object
    ConvertFrom
    (
        ITypeDescriptorContext context,
        CultureInfo culture,
        Object value
    )
    {
        Debug.Assert(value != null);
        Debug.Assert(value is String);
        AssertValid();

        NumericComparisonColumnAutoFillUserSettings
            oNumericComparisonColumnAutoFillUserSettings =
            new NumericComparisonColumnAutoFillUserSettings();

        String [] asStrings = ( (String)value ).Split( new Char[] {'\t'} );

        Debug.Assert(asStrings.Length == 4);

        oNumericComparisonColumnAutoFillUserSettings.ComparisonOperator =
            (ComparisonOperator)Enum.Parse(
                typeof(ComparisonOperator), asStrings[0] );

        oNumericComparisonColumnAutoFillUserSettings.SourceNumberToCompareTo =
            MathUtil.ParseCultureInvariantDouble( asStrings[1] );

        oNumericComparisonColumnAutoFillUserSettings.DestinationString1 =
            asStrings[2];

        String sDestinationString2 = asStrings[3];

        oNumericComparisonColumnAutoFillUserSettings.DestinationString2 =
            String.IsNullOrEmpty(sDestinationString2) ? null
            : sDestinationString2;

        return (oNumericComparisonColumnAutoFillUserSettings);
    }