2012-04-23 16 views
6

विंडोज़ फॉर्म में टेक्स्टबॉक्स में पासवर्डशेर प्रॉपर्टी होती थी। डब्ल्यूपीएफ में इसके लिए एक अतिरिक्त नियंत्रण है: पासवर्डबॉक्स। यह कोई समस्या नहीं होगी लेकिन मेरा एप्लिकेशन टचस्क्रीन केवल डिवाइस पर चलता है। दुर्भाग्यवश पासवर्ड बॉक्स स्क्रीन पर कीबोर्ड का समर्थन नहीं करता है। मैं सोच रहा था कि मानक टेक्स्टबॉक्स में पासवर्ड चार फीचर जोड़ने का कोई तरीका है या नहीं।टेक्स्टबॉक्स पासवर्ड चार

+1

लगभग [इस सवाल] के समान (http://stackoverflow.com/questions/4612757/how-do-i-change-the-on- स्क्रीन-keyboard-for-a-passwordbox) –

+0

नहीं, उसके पास है मेरी समस्या से बिल्कुल कुछ नहीं करना। मैं विंडोज़ पर डब्ल्यूपीएफ के बारे में बात कर रहा हूं और दूसरा सवाल विंडोज फोन के लिए सिल्वरलाइट के बारे में है। – David

उत्तर

4

This answer आपको जो चाहिए उसे प्रदान कर सकता है।

+1

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

1

मुझे विश्वास है कि आप इसे प्राप्त करने का एकमात्र तरीका टेक्स्टबॉक्स के आधार पर अपना स्वयं का नियंत्रण बनाना है। फिर वास्तविक टेक्स्ट प्रॉपर्टी को उस संपत्ति पर बांधें जो वास्तविक पासवर्ड की बजाय आपका पासवर्ड कैरेक्टर लौटाता है। फिर आप पासवर्ड को एक निर्भरता संपत्ति के रूप में खींच सकते हैं (हालांकि मैंने सुना है कि यह असुरक्षित है, यही कारण है कि यह पासवर्ड बॉक्स में निर्भरता प्रॉपर्टी नहीं है), या केवल एक नियमित संपत्ति है और पूरे टेक्स्टबॉक्स ऑब्जेक्ट को पास करके इसे एक्सेस कर सकता है ।

2

मैंने पासवर्ड सामग्री के लिए दो गुण बनाकर और दोनों को समान मॉडल मान में बाध्य करके इस विशेष समस्या के आसपास अपना रास्ता बनाया। उनमें से एक (दृश्यमान यूआई तत्व) पासवर्ड से बांधता है। निश्चित रूप से इस संपत्ति पर प्राप्त करें तो प्रदर्शन के लिए पात्रों की एक सरणी देता है। पासवर्ड टेक्स्ट का उपयोग करने वाले फ़ंक्शंस प्लेनपासवर्ड प्रॉपर्टी का उपयोग कर सकते हैं।

टेक्स्टबॉक्स के लिए बाध्यकारी में "UpdateSourceTrigger = PropertyChanged" जोड़ना वर्णों को टेक्स्ट बॉक्स में दिखाई देने के कारण वर्णित करता है।

public string Password 
    { 
    set 
    { 
     Model.Password = value; 
     OnPropertyChanged("Password"); 
    } 
    get 
    { 
     return new String('●', Model.Password.Length); 
    } 
    } 

    public string PlainPassword 
    { 
    set 
    { 
     Model.Password = value; 
     OnPropertyChanged("Password"); 
    } 
    get { return Model.Password; } 
    } 
-1

helló!

मैं यहां नया हूं लेकिन शायद मैं आपकी मदद कर सकता हूं। मैं इस लगता है -> काम तिनका WPF और passwordbox

private void delete_Click(object sender, RoutedEventArgs e) 
    { 
    if (pass_passbox.IsFocused == true) 
     { 
      pass_passbox.Password= ""; 
     } 
    } 

हो सकता है ओएफसी यू अगर यह pass_passbox.Text कर अपने पाठ बॉक्स लेकिन pass_passbox.Password कर सकते हैं और यू स्क्रीन कीबोर्ड से परिवर्तन कर सकते हैं जब परिवर्तन WPF passwordbox यू लिखने की ज़रूरत ।

पूरी तरह से परीक्षण नहीं लेकिन यू इस तरह

रीसेट कर सकते हैं और यू इस तरह का चयन कर सकते हैं:

string Query = "Select * from [employeeinfo] where username='" + this.txt_user_name.Text + "' and password='" + this.pass_passbox.Password + "' "; 

यू देख सकते हैं this.pass_passbox.Password पाठ बॉक्स में एक ही है this.pass_passbox.Text

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