2009-11-11 30 views
5

我想知道是否有人可以幫忙,我正在嘗試將Caps的第一個字母改爲小寫字母,然後我可以使用ToTitleCase - 但我正在努力實現這個目標;ToTitleCase的使用

<%= Html.Label("rblDeposit." + (i + 1).ToString(), item.Text.ToLowerInvariant())%> 

我明白我需要一個字符串供應到ToTitleCase,但我怎麼也應用此item.text一部分?

我以爲我可以做這樣的事情;

<%= Html.Label("rblDeposit." + (i + 1).ToString(), item.Text.ToTitleCase(item.Text))%> 

感謝

+2

嗯 - 這個方法的文檔說「我們保留在未來使這個API變慢的權利」! – 2011-12-30 01:25:41

回答

13

如果你不想使用當前CultureInfo,您可以使用靜態InvariantCulture的:

System.Globalization.CultureInfo.InvariantCulture.TextInfo.ToTitleCase(item.Text) 

希望有所幫助。

+0

嗨,該頁面確實與此有關,但是在我使用ToLowerInvariant將其更改爲小寫之前,現在一切都是大寫 - 我怎麼才能將ToLowerInvariant重新引入到此中 - 被拉出的數據是大寫字母。謝謝 – ivor 2009-11-11 16:11:38

+1

根據我的理解,如果輸入文本中有空格,TitleCase將起作用。它大寫每個單詞的第一個字符。在轉換爲TitleCase之前,您不必先「降低」案例。 - 我希望我正確理解你的問題。 – 2009-11-11 16:29:30

+2

ToTitleCase很可能不會觸及非第一個字母。不要將'item.Text'傳遞給'ToTitleCase',而是傳遞'item.Text.ToLower()'或'item.Text.ToLowerInvariant()'。 – outis 2009-11-13 16:09:59