TextBlock에 표시되는 내용 중 검색어를 빨간색으로 표시하기 (tistory.com)
TextBlock에 표시되는 내용 중 검색어를 빨간색으로 표시하기
TextBlock에 출력된 내용 중 내가 검색한 키워드의 위치를 표시하는 기능이 필요할 때가 있습니다. 그런데, 이 기능은 Behavior를 이용해서 붙일 수가 없습니다. 왜냐하면 TextBlock은 BehaviorCollection을
kaki104.tistory.com
TextBlock에 출력된 내용 중 내가 검색한 키워드의 위치를 표시하는 기능이 필요할 때가 있습니다.
그런데, 이 기능은 Behavior를 이용해서 붙일 수가 없습니다. 왜냐하면 TextBlock은 BehaviorCollection을 지원하지 않기 때문입니다.
저도 몰라서 Behavior를 만들어서 붙이려....ㅎㅎ
1. AttachedProperty 이용하기
이 기능을 구현하는 가장 쉬운 방법은 AttachedProperty를 이용하는 것입니다.
AttachedProperty를 이용하기 위해서 아래 클래스를 추가합니다.
2. XAML에서 사용하기
TextExtension 클래스를 이용하기 위해서는 namespace를 먼저 추가해줘야 합니다.
그리고 TextBlock에 붙여서 사용합니다.
ext:TextExtension.Keyword="{Binding Keyword}"
3. 동작
바로 위에 TextBox에서 Keyword가 입력되면, 바로 아래로 전달되고, 키워드가 변경되면, TextBlock의 Text 프로퍼티의 값을 키워드랑 비교해서 글씨를 출력하게 됩니다.
참 쉽죠?
4. 소스
WpfTest/KeywordSample at master · kaki104/WpfTest (github.com)
GitHub - kaki104/WpfTest
Contribute to kaki104/WpfTest development by creating an account on GitHub.
github.com
이 소스 참고해서 전체 택스트에서 키워드를 모두 찾아서 표시하면 더 좋을 것 같네요~
첫댓글 오호
흐흐
첫댓글 오호
흐흐