मैं बस एम-वी-वीएम और डब्ल्यूपीएफ के साथ शुरू कर रहा हूं और कुछ बाध्यकारी मुद्दों को समझने में समस्याएं हैं।पासवर्डबॉक्स बाध्यकारी
मेरे पास एक लॉगिन पृष्ठ है जिसमें ComboBox
और PasswordBox
है। ComboBox
इस तरह दिखता है:
<ComboBox Name="comboBox1" SelectedItem="{Binding Path=Username}">
यह सिर्फ ठीक काम करता है - मेरे मान अपडेट कर दिया ComboBox
पर हर SelectedItem
परिवर्तन!
public bool CanLogin()
{
return !string.IsNullOrEmpty(Username) && !string.IsNullOrEmpty(Password);
}
तो मेरी समस्या मैं PasswordBox
ViewModel पर पासवर्ड संपत्ति के लिए बाध्य नहीं है:
मेरी ViewModel में मैं अगर लॉग इन बटन सक्रिय है एक ICommand
जो इस विधि का उपयोग करता निर्धारित करने के लिए है - इसलिए मुझे यह अपडेट करने का कोई तरीका नहीं है कि इसे कब अपडेट किया जाए।
तो मैं अपने व्यूमोडेल में PasswordBox
का मूल्य कैसे प्राप्त करूं? मैंने जो कुछ भी पढ़ा है, वह सुरक्षा कारणों से PasswordBox
को बाध्य नहीं करता है। मैं केवल CanLogin() पर पासवर्ड प्रतिबंध हटा दूंगा लेकिन मुझे खाता सेवा के साथ पास करने के लिए मूल्य की आवश्यकता है।
यदि आप पासवर्ड को स्ट्रिंग (और सुरक्षित नहीं) के रूप में बाध्य करते हैं तो आप अपनी प्रक्रिया की स्मृति में पासवर्ड का पर्दाफाश कर रहे हैं। दोनों दिए गए समाधान सुरक्षा समझौता – Rubinsh