2013-06-11 7 views
7

मैं WPF में नया हूं, बस आज सीखना शुरू करें। क्या कोई मेरी मदद कर सकता है कि टेक्स्टबॉक्स को मुद्रा प्रारूप के रूप में कैसे प्रारूपित किया जाए? जो मेरे टेक्स्टबॉक्स में, केवल 2 दशमलव बिंदु वाले संख्याओं द्वारा इनपुट किया जा सकता है? धन्यवाद।मुद्रा प्रारूप (WPF MVVM) के रूप में इनपुट टेक्स्टबॉक्स बनाएं

उत्तर

3

आप इस

<TextBox TextAlignment="Right" 
     Text="{Binding Price, 
      UpdateSourceTrigger=PropertyChanged, 
      StringFormat='#.00', 
      ConverterCulture={x:Static sysglb:CultureInfo.CurrentCulture}}"/> 

जो पाठ सही संरेखण के लिए और 105.00 या 19.95 दशमलव बिंदु/उपयोगकर्ता सिस्टम सेटिंग के आधार पर अल्पविराम के साथ की तरह एक प्रारूप के लिए मजबूर करता की तरह कुछ का उपयोग कर सकते हैं। यदि लागू हो तो आप स्ट्रिंग प्रारूप में एक मुद्रा चिह्न भी जोड़ सकते हैं।

संपादित करें: क्षमा करें, मैं नामस्थानों के स्वचालित आयात के साथ खराब हूं। अपने उच्च-स्तर तत्व में (UserControl, खिड़की, ...) जोड़ें:

<UserControl x:Class="..." 
    ... 
    xmlns:sysglb="clr-namespace:System.Globalization;assembly=mscorlib" 
    ... 
> 
+0

धन्यवाद, मैं इस कोड की कोशिश, लेकिन क्यों मैं sysglb का उपयोग नहीं कर सकता: CultureInfo.CurrentCulture} * मेरे बेवकूफ सवाल के लिए खेद है। < – user2473454

+0

यदि आप रीशेपर प्लगइन का उपयोग नहीं करते हैं (अरे! यह पैसे के लायक है! ठीक है, मैं पक्षपातपूर्ण हूं, क्योंकि मैं इसके अन्य उत्पादों का उपयोग करता हूं कंपनी ...), नामस्थान स्वचालित रूप से आयात नहीं होते हैं। मैं इसे अपने उत्तर में जोड़ दूंगा। – eMko

+0

@ user2473454 मुझे वही मिलता है ... – AndyUK

10

आप कुछ इस तरह के लिए देख रहे ?: मदद के लिए

<TextBox Text="{Binding Path=Txt, StringFormat=C}"/> 
+0

यह उपयोगकर्ता सिस्टम सेटिंग के आधार पर मुद्रा चिह्न प्रदर्शित करेगा, जो डेटाबेस में मुद्रा के साथ मेल नहीं खाता है। – eMko

+0

कौन सा डेटाबेस? ;-) – rhe1980

+1

या जो भी डेटासॉर आपके पास है :)। आपका समाधान मेरा (वोट अप) की तुलना में निश्चित रूप से क्लीनर है, लेकिन इसमें एक कमांडिंग है कि आपके पास कोई नियंत्रण नहीं है जो उपयोगकर्ता को मुद्रा चिह्न प्रदर्शित होता है और इस प्रकार डेटा से मेल नहीं खाता है। – eMko

संबंधित मुद्दे