2009-05-28 3 views
6

대부분의 목록 상자에서는 표시된 텍스트의 첫 번째 문자를 입력하여 항목을 찾을 수 있습니다. 입력 된 문자가 여러 항목과 일치하면 문자를 계속 추가하여 검색 범위를 좁힐 수 있습니다.입력하여 WPF ListBox에서 항목을 어떻게 찾을 수 있습니까?

WPF ListBox에서이 작업을 수행해야합니다. 그러나 항목은 일반 문자열이 아닙니다.이 항목은 DataTemplate을 사용하여 표시하는 사용자 정의 개체입니다. ListBox 항목의이 텍스트 키보드 탐색에 사용해야하는 문자열 값에 대한 경로를 제공 할 수있는 방법이 있기를 바랍니다.

어떻게 가능합니까?

답변

17

IsTextSearchEnabled을 true로 설정하고 TextSearch.TextPath 속성을 사용하여 시도해 볼 수 있습니다.

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

대단히 감사합니다. 이것은 완벽하게 작동했습니다. TextPath 값은 경로 여야합니다 (첫 번째 부분은 형식 이름과 비슷하지만이 경우 항목에 'CustomObject'라는 속성이 있고 'StringProperty'라는 속성이 있습니다) –

+0

True가 true입니다 기본 그래서 그것까지 당신이 그것을 좀 더 자세한 보이게하려는 여부 –

+0

잘 작동합니다. TextPath를 둘 이상의 속성에 바인딩 할 수 있습니까? – Igor

관련 문제