2010-02-14 18 views
6

मैं कैसे फॉर्म फॉर्म टेक्स्ट बॉक्स पर मास्क डाल सकता हूं ताकि यह केवल संख्याओं को अनुमति दे सके? और यह कैसे एक और मास्क डेटा के लिए काम करता है, फोन जिप आदिविन फॉर्म टेक्स्ट बॉक्स मास्क

मैं

धन्यवाद का उपयोग कर रहा विजुअल स्टूडियो 2008 सी #।

उत्तर

3

आप इनपुट कि अनुमति नहीं है को रोकने या इनपुट को मान्य करने से पहले इसे आगे बढ़ने के लिए संभव है करना चाहते हैं का उपयोग कर सकते हैं?

पूर्व कुंजी को दबाते समय उपयोगकर्ताओं को भ्रमित कर सकता था लेकिन कुछ नहीं होता था। आमतौर पर अपने कीप्रेस को दिखाने के लिए बेहतर होता है लेकिन एक चेतावनी प्रदर्शित करता है कि इनपुट वर्तमान में अमान्य है। उदाहरण के लिए ईमेल-एड्रेस नियमित अभिव्यक्ति को मास्क करने के लिए सेट अप करना शायद जटिल है।

उपयोगकर्ता को जो कुछ भी चाहिए वो टाइप करने के लिए ErrorProvider पर देखने के लिए, लेकिन वे टाइप करते समय चेतावनियां दिखाएं।

टेक्स्ट बॉक्स के आपके पहले सुझाव के लिए जो केवल संख्याओं की अनुमति देता है, आप NumericUpDown पर भी विचार करना चाहेंगे।

+1

एक ठीक से डिजाइन यूजर इंटरफेस के लिए क्यों अपने पाठ टाइप नहीं था के रूप में कोई भ्रम छोड़ देना चाहिए। मैं उन लोगों के लिए मेडिकल बिलिंग सॉफ्टवेयर कर रहा हूं, जिन्होंने पहले कभी कंप्यूटर का उपयोग नहीं किया है, और यहां तक ​​कि उन्हें यह भी मिलता है कि पत्र एसएसएन या बीमा आईडी नंबर फ़ील्ड में क्यों नहीं जाएंगे। –

+0

अधिकांशतः मैं एसएसएन जैसे मामलों और आईडी आदि द्वारा इनपुट में कभी-कभी इनपुट की रोकथाम का उपयोग करता हूं। – eomeroff

0

जैसा ऊपर बताया गया है, MaskedTextBox का उपयोग करें।

यह ErrorProvider का उपयोग करने के लायक भी है।

0

मास्क टेक्स्ट बॉक्स का उपयोग करें और मास्कटेक्स्टबॉक्सआईडी.मास्क असाइन करें।

यू तो पाठ बॉक्स का उपयोग करने की नियमित अभिव्यक्ति लिखने के लिए यह

0

नियंत्रण उपयोगकर्ता की कुंजी दबाएँ घटना किसी भी अवांछित वर्ण की अनुमति नहीं दे द्वारा इनपुट नकाब के लिए है चाहते हैं।

दशमलव के साथ ही संख्या की अनुमति देना:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e) 
    { 
     // allows 0-9, backspace, and decimal 
     if (((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != 46)) 
     { 
      e.Handled = true; 
      return; 
     } 

     // checks to make sure only 1 decimal is allowed 
     if (e.KeyChar == 46) 
     { 
      if ((sender as TextBox).Text.IndexOf(e.KeyChar) != -1) 
       e.Handled = true; 
     } 
    } 

केवल फोन नंबर मूल्यों की अनुमति देना:

private void txtPhone_KeyPress(object sender, KeyPressEventArgs e) 
{ 
    if (e.KeyChar >= '0' && e.KeyChar <= '9') return; 
    if (e.KeyChar == '+' || e.KeyChar == '-') return; 
    if (e.KeyChar == 8) return; 
    e.Handled = true; 

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