Pregunta

Me gustaría utilizar AutoCompleteBox con una lista de valores, sino también añadir nuevos valores a la lista si un usuario introduce una que no está presente.

Actualmente tengo una propiedad de cadena en mi modelo de vista llamado 'Comentario'. Actualmente esto se une a un cuadro de texto en la vista - usuario escribe un comentario y el modelo de vista se actualiza. Simple.

Para ahorrar tiempo, mi cliente le gustaría que autocompletar de los valores anteriores, por lo que la forma en que pensaba hacer esto es algo como:

modelo de vista

public string Comment;
public ObservableCollection<string> CommentsList { ... }

(poblar el CommentsList cuando se crea el modelo de vista)

Ver

<AutoCompleteComboBox ItemsSource="{Binding CommentsList}" SelectedItem="{Binding Comment, Mode=TwoWay/>

Así que cuando el usuario selecciona un valor, se guarda el valor de la propiedad Comment. Esto funciona bien si el usuario selecciona un elemento de la lista, pero si el usuario escribe un nuevo valor, la propiedad de comentario no se actualiza (es nula debido a que el elemento seleccionado no estaba en la lista).

¿Es esto posible con AutoCompleteBox?

Gracias de antemano, Will

¿Fue útil?

Solución

encontrado la solución ...

Yo necesitaba usar la propiedad de texto, no SelectedItem.

texto Contiene el texto actual que el usuario ha introducido o seleccionado.

SelectedItem Es nulo si no hay ningún elemento está seleccionado actualmente. Si los usuarios navega a través de la caída hacia abajo, la selección de artículos, o hace clic en un elemento, este se actualizará a ese elemento.

Vea:

http://www.jeff.wilcox.name/2008/ 10 / introduciendo-AutoCompleteBox /

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top