Wystarczy zaokrąglić rzeczy, alternatywne rozwiązanie przy użyciu LINQ z metodami rozszerzenia.
public static string ToSentenceCase(this string value)
{
string[] spacedWords
= ((IEnumerable<char>)value).Skip(1)
.Select(c => c == char.ToUpper(c)
? " " + char.ToLower(c).ToString()
: c.ToString()).ToArray();
string result = value.Substring(0, 1)
+ (String.Join("", spacedWords)).Trim();
return result;
}
Powroty: "główny kolor tła strony"
public static string ToTitleCase(this string value)
{
string[] spacedWords
= ((IEnumerable<char>)value)
.Select(c => c == char.ToUpper(c)
? " " + c.ToString()
: c.ToString()).ToArray();
return (String.Join("", spacedWords)).Trim();
}
Powroty: "Main Page Kolor tła"
małe litery cały ciąg potem wielkie litery pierwszej litery. można łatwo zrobić w jednym wierszu kodu. – Jonesopolis
Czy możesz podać kilka próbek tego, co chcesz na wyjściu? –
Powinienem także dodać, że już wiem, jak wyglądają wyliczenia, więc nie oczekuję złego kodowania. Oto przykład: BackgroundColor będzie wyświetlany użytkownikowi jako kolor tła w właściwości nagłówka combobox, a wartości wyliczeniowe wypełniają pole wyboru. Użytkownik wybiera kolor i aktualizuje ViewModel/UI. –