2009-02-15 23 views
8

Tengo una interfaz de usuario de cacao simple con una lista de elementos y un campo de búsqueda, implementado usando NSTableView y NSSearchField, respectivamente. La fuente de datos y todas las vinculaciones están configuradas y funcionan muy bien. Veo mis datos en la lista y puedo buscarlos escribiendo cadenas en el campo de búsqueda. A medida que escribo más texto, la cantidad de elementos de la lista se reduce y se reduce a un artículo que estaba buscando.¿Cómo puedo restablecer un NSSearchField de cacao mediante programación?

Ahora, ¿cómo puedo borrar el texto en el campo de búsqueda y forzar que la lista vuelva a la normalidad? Puedo hacer que esto suceda al borrar el texto manualmente (usando el teclado), pero cuando trato de hacerlo programáticamente, los elementos ocultos en la lista no vuelven.

estoy usando esto:

[searchField setStringValue:@""]; 

para borrar el texto en el campo de búsqueda, pero no restablece la lista.

¿Alguna idea? ¿Existe un método simple [searchField reset] que simplemente no puedo encontrar en la documentación?

Respuesta

8

lo he descubierto. El siguiente código funciona:

[searchField setStringValue:@""]; 
[[[searchField cell] cancelButtonCell] performClick:self]; 
6

Lo descubrí. El siguiente código funciona:

[searchField setStringValue:@""]; 
[[[searchField cell] cancelButtonCell] performClick:self]; 
+0

Odio dejar las preguntas "sin respuesta" solo porque no tengo la capacidad de marcar mi propia respuesta como aceptada. ¿Alguien puede volver a publicar mi respuesta como propia? –

+0

Pide y recibirás. – wfarr

3

[[[searchField cell] cancelButtonCell] performClick:self]; podría funcionar, pero realmente parece que debe haber una solución "correcta". ¿Su vista de tabla está realmente vinculada al valor de searchField, o está vinculada a algún objeto intermedio que no se actualiza cuando establece los contenidos de searchField a la cadena vacía de forma programática (pero que se actualiza cuando escribe por la forma en que los enlaces? están configurados en la punta)?

+0

Estoy de acuerdo, pero no he podido encontrar nada. Cuando buscaba una respuesta en Google, había muchos otros desarrolladores haciéndoles la misma pregunta. –

+0

Tengo tanto el campo de búsqueda como la vista de tabla vinculados a un objeto NSArrayController que proporciona los datos. –

Cuestiones relacionadas