मैं एक DataTemplate के अंदर एक ग्रिड के अंदर एक TextBox है जो मैं कीबोर्ड फोकस होना चाहता हूं जब यह दिखाई देता है। मैंने वो भी पाया
<DataTemplate x:Key="DistanceView" DataType="{x:Type vm:ROI}">
<Grid FocusManager.FocusedElement="{Binding ElementName=tbDistance}">
<TextBox x:Name="tbDistance" Grid.Column="1" Grid.Row="1" VerticalAlignment="Bottom"/>
</Grid>
</DataTemplate>
मेरे लिए काम नहीं किया।
हालाँकि जब मैं मूल ContentControl में फोकस () कहता हूं
private void ContentControl_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
{
if ((sender as ContentControl).IsVisible)
{
(sender as ContentControl).Focus();
}
}
यह काम करना शुरू कर देता है और टेक्स्टबॉक्स में कैरेट दिखाई देता है। मुझे लगता है कि फ़ोकसकैप को फ़ोकसमैनगर के लिए फोकस दिया जाना चाहिए। फ़ोकस की गई संपत्ति का कोई प्रभाव नहीं होना चाहिए।
जैरी