2009-05-28 30 views
6

Çoğu liste kutusu, görüntülenen metnin ilk harflerini yazarak aralarında öğeleri bulmanızı sağlar. Yazılan harfler birden çok öğeyle eşleşiyorsa, aramayı daraltmak için harf eklemeye devam edebilirsiniz.WPF ListBox'ta bir öğeyi yazarak nasıl bulabilirim?

Bunu bir WPF ListBox içinde yapmalıyım. Ancak, öğeler düz dizeler değildir - DataTemplate kullanarak sunduğum özel nesnelerdir. ListBox öğelerinin bu metinsel klavye gezinme için kullanılması gereken dize değerine bir yol sağlayabileceğimi umuyorum.

Bu nasıl olabilir?

cevap

17

IsTextSearchEnabled ayarını true olarak ve TextSearch.TextPath bağlı özelliğini kullanarak ayarlamayı deneyebilirsiniz.

örn.

<ListBox IsTextSearchEnabled="True" 
     TextSearch.TextPath="CustomObject.StringProperty"/> 
+1

Çok teşekkürler. Bu mükemmel çalıştı. Sadece açık olmak gerekirse, TextPath değeri bir yol olmalıdır (ilk kısım bir tür adı gibidir, ancak bu durumda öğenin 'CustomObject' adlı bir özelliği vardır ve bu nesnenin 'StringProperty' adlı bir özelliği vardır.) –

+0

True is varsayılan o kadar size daha fazla bakmak istiyorsanız olsun ya da değil –

+0

Works güzelce. TextPath birden fazla mülke bağlanabilir mi? – Igor

İlgili konular