示例#1
0
        SplitName
        (
            String sEnumName,
            EnumSplitStyle eEnumSplitStyle
        )
        {
            Debug.Assert(sEnumName != null);
            Debug.Assert(Enum.IsDefined(typeof(EnumSplitStyle), eEnumSplitStyle));

            StringBuilder oStringBuilder = new StringBuilder();
            Int32         iLength        = sEnumName.Length;

            Boolean bConvertToLowerCase =
                (eEnumSplitStyle == EnumSplitStyle.AllWordsStartLowerCase
                 ||
                 eEnumSplitStyle == EnumSplitStyle.FirstWordStartsUpperCase);

            // Loop through the characters.

            for (Int32 i = 0; i < iLength; i++)
            {
                Char cChar = sEnumName[i];

                if (i > 0 && Char.IsUpper(cChar))
                {
                    // Insert a space.

                    oStringBuilder.Append(' ');

                    // Convert to lower case if requested.

                    if (bConvertToLowerCase)
                    {
                        cChar = Char.ToLower(cChar);
                    }
                }

                oStringBuilder.Append(cChar);
            }

            // Convert the first character to lower case if requested.

            if (iLength > 0 &&
                eEnumSplitStyle == EnumSplitStyle.AllWordsStartLowerCase)
            {
                oStringBuilder[0] = Char.ToLower(oStringBuilder[0]);
            }

            return(oStringBuilder.ToString());
        }
示例#2
0
    SplitName
    (
        String sEnumName,
        EnumSplitStyle eEnumSplitStyle
    )
    {
        Debug.Assert(sEnumName != null);
        Debug.Assert( Enum.IsDefined(typeof(EnumSplitStyle), eEnumSplitStyle) );

        StringBuilder oStringBuilder = new StringBuilder();
        Int32 iLength = sEnumName.Length;

        Boolean bConvertToLowerCase =
            (eEnumSplitStyle == EnumSplitStyle.AllWordsStartLowerCase
            ||
            eEnumSplitStyle == EnumSplitStyle.FirstWordStartsUpperCase);

        // Loop through the characters.

        for (Int32 i = 0; i < iLength; i++)
        {
            Char cChar = sEnumName[i];

            if ( i > 0 && Char.IsUpper(cChar) )
            {
                // Insert a space.

                oStringBuilder.Append(' ');

                // Convert to lower case if requested.

                if (bConvertToLowerCase)
                    cChar = Char.ToLower(cChar);
            }

            oStringBuilder.Append(cChar);
        }

        // Convert the first character to lower case if requested.

        if (iLength > 0 &&
            eEnumSplitStyle == EnumSplitStyle.AllWordsStartLowerCase)
        {
            oStringBuilder[0] = Char.ToLower( oStringBuilder[0] );
        }

        return ( oStringBuilder.ToString() );
    }