2009-04-17 5 views
7

Infragistics Webgrid를 사용 중이며 통화 문자열을 형식화해야합니다. 이를 위해 "$ ### ###, 00"과 같은 패턴이 포함 된 문자열이 필요하며 현재 CultureInfo에서이 문자열을 가져오고 싶습니다. 어떻게해야합니까? 내가있는 정보에서 수동으로 구성해야합니까 :asp.net의 통화 형식 문자열

CultureInfo.CreateSpecificCulture(myLanguageId).NumberFormat.CurrencyGroupSeparator 
CultureInfo.CreateSpecificCulture(myLanguageId).NumberFormat.CurrencyGroupSizes 
CultureInfo.CreateSpecificCulture(myLanguageId).NumberFormat.CurrencyDecimalDigits 
CultureInfo.CreateSpecificCulture(myLanguageId).NumberFormat.CurrencyDecimalSeparator 

등 등 등

(가) 한 줄 솔루션인가?

답변

1

답장을 보내 주셔서 감사합니다. 내 요구 사항이 잘못되었다는 것이 밝혀졌습니다. Infragistics 그리드는 패턴 문자열이 어떤 구분 기호를 사용 하는지를 알기를 원하지 않으며 소수 문자에 패턴 문자열을 사용하고 나머지는 현재 문화권에 쿼리합니다. 그래서 문제가 아닙니다. 어쨌든 감사합니다!

10
decimal moneyvalue = 1921.39m; 
string s = String.Format("{0:C}", moneyvalue); 

현재 문화권이 사용됩니다.

당신은 당신의 Web.config에 다음했는지 확인하십시오 :

<system.web> 
    <globalization culture="auto" uiCulture="auto"/> 
</system.web> 

또는 CK에서 알 수 있듯이, 그렉 딘의 대답에 추가 페이지

+0

글쎄,별로. 나는 실제 변환을 직접 만들고 싶지 않고 단지 패턴 문자열을 얻는다. 유사 항목 : 문자열 myPattern = CreateCurrencyPattern (myCurrentCulture); 다음 myPattern에는 통화 기호 유무에 관계없이 "$ ###, ###, ###. 00"이 포함됩니다. –

+0

이 답변은 요청한 결과를 제공하지 않습니다. –

0

에서, 동등한를 선언, 당신이해야 할 수도 있습니다

Culture="auto" UICulture="auto" 

페이지의 @Page 선언에.

0

첫 번째 - 특정 문화에 종사하는 경우 형식 문자열로 "C"를 사용하지 않고 문화의 통화 형식을 사용해야합니다.

Custom numeric format strings 통화 토큰이 없습니다. 그러나 나는 "### ###, 00"으로 포맷팅 한 문자열에 currency symbol을 추가 할 수 있다고 생각합니다.

0

우리는 우리 프로젝트에서 거의 비슷한 요구 사항을 가지고있었습니다. 우리가 한 것은 infragistics의 webcurrencyedit 컨트롤을 사용하여 통화를 표시해야하는 열의 editorcontrolid로 설정 한 다음 webcurrencyedit 컨트롤의 culture를 설정하는 것입니다.