Sekme kontrolüm ve birkaç sekme öğem var. SelectionChanged
olayını başarıyla dinliyorum ve ilgilendiğim sekmenin seçili olanın olup olmadığını kontrol ediyorum.WPF TabControl On SelectionChanged, odağı bir metin alanına ayarla
Bu kodu (aşağıda) kullanılarak ve ayıklayıcıya yoluyla kaldığımı, benim dallanma mantığı tasarlandığı gibi çalıştığını görebilirsiniz; Ancak, sahip olduğum sorun şu ki, bu çağrıyı txt.Focus()
numaralı telefona geçersiz kılıyor çünkü doğru sekme öğesi görüntülendikten sonra, odak metin kutusunda değil. Ben sadece bir düğme olay işleyicisi içinde txtusr.Focus()
koyarsanız
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();
}
}
, ben beklediğiniz gibi tam odaklanır.
Bunun, .Focus()
yönteminin çağrıldığı anda yüklenmeyen tabitem içeriğiyle ilgili olduğundan şüpheleniyorum, ancak nasıl düzelteceğimi bilmiyorum. .Focus() koyarak
Yeniden üretilip üretilemeyeceğini görmek için bu sorunu harici kodunuzdan yalıtdınız mı? Eğer öyleyse, bir zamanlama/çerçeve sorunu ve daha sonra eldeki bu bilgi ile problemi biraz farklı bir şekilde ele alabilirsiniz. –
Ben inconsistantly bir taslaktır-programında bu çoğaltmak başardı. – Nate