मेरे पास एक टैब नियंत्रण है, और कुछ टैब आइटम हैं। मैं सफलतापूर्वक SelectionChanged
ईवेंट सुन रहा हूं, और जांच कर रहा हूं कि जिस टैब में मुझे रूचि है, वह वर्तमान में चयनित है।चयन पर WPF TabControlChanged, एक टेक्स्ट फ़ील्ड पर ध्यान केंद्रित करें
मैं इस कोड का उपयोग कर रहा हूं (नीचे), और डीबगर के माध्यम से कदम, मैं देख सकता हूं कि मेरा ब्रांचिंग तर्क डिजाइन के रूप में काम करता है; हालांकि, मेरे पास यह मुद्दा है कि इस कॉल को txt.Focus()
पर ओवरराइड कर रहा है क्योंकि सही टैब आइटम प्रदर्शित होने के बाद, फोकस टेक्स्ट बॉक्स पर नहीं है।
private void tabMain_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
// exact same behavior with and without this line
e.Handled = true;
if (e.AddedItems.Contains(usrTab))
{
txtusr.Focus();
}
else if (e.AddedItems.Contains(svcTab))
{
txtsvc.Focus();
}
}
मैं सिर्फ एक बटन ईवेंट हैंडलर में txtusr.Focus()
डालें, तो वह वास्तव में केंद्रित है के रूप में मैं उम्मीद थी।
मुझे संदेह है कि इसे .Focus()
विधि के समय लोड होने पर टैबिटम सामग्री के साथ ऐसा करना है, लेकिन मुझे यकीन नहीं है कि इसे ठीक करने के बारे में कैसे जाना है।
क्या आपने अपने कोड के बाहरी समस्या को अलग करने के लिए यह देखने के लिए अलग किया है कि यह पुनरुत्पादित है या नहीं? यदि ऐसा है, तो यह एक समय/ढांचा मुद्दा है और फिर आप इस ज्ञान के साथ समस्या को थोड़ा अलग तरीके से देख सकते हैं। –
मैं इसे स्टब-प्रोग्राम में असंगत रूप से पुन: उत्पन्न करने में सक्षम था। – Nate