cuando trato de enfocarme en mi "autocompletetextbox" Fallé Escribo autocompletetextbox.focus()
pero el cursor todavía se enfoca en otro ¿qué debo hacer o escribir para poder escribir en él o enfocar?autocompletebox focus en wpf
Respuesta
Experimenté lo mismo: no funciona correctamente en su forma actual (supongo que está hablando de AutoCompleteBox que viene con el lanzamiento de WPFToolkit en febrero de 2010).
he creado una subclase:
public class AutoCompleteFocusableBox : AutoCompleteBox
{
public override void OnApplyTemplate()
{
base.OnApplyTemplate();
var textbox = Template.FindName("Text", this) as TextBox;
if(textbox != null) textbox.Focus();
}
}
Este establece el foco a la actual TextBox
(llamado "texto") que forma parte del defecto ControlTemplate
.
Parece que tiene que esperar a que se cargue primero la caja de autocompletar. A continuación, establecer el foco
<sdk:AutoCompleteBox
x:Name="_employeesAutoCompleteBox"
ItemsSource="{Binding Path=Employees}"
SelectedItem="{Binding SelectedEmployee, Mode=TwoWay}"
ValueMemberPath="DisplayName" >
</sdk:AutoCompleteBox>
_employeesAutoCompleteBox.Loaded +=
(sender, e) => ((AutoCompleteBox)sender).Focus();
que tendrá que reemplazar el método de enfoque para encontrar la plantilla de la caja de texto.
public class FocusableAutoCompleteBox : AutoCompleteBox
{
public new void Focus()
{
var textbox = Template.FindName("Text", this) as TextBox;
if (textbox != null) textbox.Focus();
}
}
' using System.Windows.Controls; 'too – mbdavis
Esta es mi solución para establecer el foco en AutoCompleteTextBox Control de texto:
MyPageLoaded private void (object sender, RoutedEventArgs e) {
var myPage = (MyControl)sender;
var autoTextBox = (AutoCompleteTextBox)myPage.FindName("AutoTextBox");
if (autoTextBox != null)
{
var innerTextBox = autoTextBox.textBox;
if (innerTextBox != null)
{
innerTextBox.Focus();
}
}
}
Esto es muy vieja pregunta, pero quiero compartir mi trabajo.
Keyboard.Focus(autocompletetextbox);
autocompletetextbox.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));
Esto funciona en WPFToolkit v3.5.50211.1
en Visual Studio Express 2015 for Windows Desktop
Simple y funciona para mí. ¡Gracias! – landsteven
Ésta es mi solución,
me pareció más fácil que haber heredado clase
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
var textBox = FindVisualChild<TextBox>(CodedCommentBox);
textBox.Focus();
}
private TChildItem FindVisualChild<TChildItem>(DependencyObject obj) where TChildItem : DependencyObject
{
for (var i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++)
{
var child = VisualTreeHelper.GetChild(obj, i);
var item = child as TChildItem;
if (item != null)
{
return item;
}
var childOfChild = FindVisualChild<TChildItem>(child);
if (childOfChild != null)
{
return childOfChild;
}
}
return null;
}
Gracias, funciona – Harmi
- 1. WPF autocompletebox y la tecla enter
- 2. WPF MVVM Focus Field on Load
- 3. AutoCompleteBox y SearchText Borrar
- 4. Ancho desplegable de AutoCompleteBox
- 5. jquery focus no desencadena css focus
- 6. UITextField focus
- 7. WPF AutoCompleteBox - ¿Cómo restringirlo elegir solo de la lista de sugerencias?
- 8. jQuery Focus falla en Firefox
- 9. Focus-follows-mouse en wxPython?
- 10. ItemTemplate no afecta el elemento seleccionado de AutoCompleteBox
- 11. -moz-focus-inner
- 12. TEdit focus & caret
- 13. Jquery focus out evento
- 14. Gxt focus management
- 15. C# Force Form Focus
- 16. Tinymce Blur/Focus Evento
- 17. focus a NSTextField
- 18. Desactivar JButton focus border
- 19. jquery focus on load
- 20. Detectar UITextField Lost Focus
- 21. Tabindex Focus Estilos
- 22. Mylyn Task Focus UI
- 23. jQuery Textarea focus
- 24. PyQt Window Focus
- 25. Silverlight 4 AutoCompleteBox, el establecimiento de SelectedItem en null
- 26. ¿Cómo elimino focus onmousedown en IE?
- 27. jQuery Mobile focus siguiente entrada en keypress
- 28. ¿Cuándo cambia el * Window focus * en Android?
- 29. jquery focus no funciona en desenfoque
- 30. jQuery tokenInput plugin (and focus)
donde debo poner esta clase Intenté en la clase que tiene el cuadro de autocompletar pero no funciona. – kartal
En su XAML utiliza esto en lugar de 'AutoCompleteBox'. Entonces, si tiene esta clase en el espacio de nombres XYZ, importe ese espacio de nombres en la raíz del archivo XAML, con un alias como xyz y luego use –
Jay
I intentado pero mezcla, dame un error AutoCompleteFocusableBox no es compatible con wpf !!! – kartal