2012-08-23 3 views
1

나는 reachtextbox가 있고 별도의 대화 상자에서 silverlight의 메모장과 같은 텍스트를 검색하려고합니다. 텍스트를 찾고 richtextbox에 입력 한 거대한 텍스트의 텍스트를 검색하십시오. 메모장과 텍스트 같은 별도의 대화 상자를 사용하여 텍스트를 편집하고 richtextbox에서 강조 표시하려면 어떻게해야합니까?Silverlight에서 대화 상자를 사용하여 텍스트 상자에서 텍스트 검색

+0

MVVM을 사용하고 있습니까 ?? – zapico

+0

아니요 MVVM이 아닙니다. 그것의 정상적인 서비스 기반 페이지. –

답변

1

Mediator를 사용하여 검색 양식과 텍스트 양식간에 메시지를 보낼 수 있습니다. 검색 양식에서 "OnSearch"와 같은 이벤트를 선언하고 텍스트 양식에서 이벤트를 승인 할 수 있습니다. 이벤트가 발생하면 검색 할 문자열과 함께 eventarg를 보내야합니다.

텍스트 형식은 문자열 매개 변수와 함께 "searchMessage"를 지정해야합니다. 텍스트 양식의 비즈니스 계층은 검색 옵션에 따라 모든 문자열/하위 문자열을 찾는 "검색"메소드를 구현해야합니다. 그런 다음 각 우연의 텍스트 색상을 변경하십시오.

검색 문자열 : http://msdn.microsoft.com/en-us/library/ms228630(v=vs.80).aspx

또한하여 RichTextBox에서 찾기 방법을 사용할 수 있습니다.

해당 텍스트의 색을 변경하려면 텍스트를 선택한 것으로 설정 한 다음 해당 선택 색을 변경하십시오. SelectionStart, SelectionLenght, SelectionColor.

+0

네,하지만 내 richtextbox에 입력 된 원하는 텍스트를 검색하고 검색된 많은 부분을 선택하는 별도의 대화 상자를 제공하고 싶습니다. 나는 자식 윈도우를 사용하여 할 수 있지만, 직면하고있는 자식 윈도우의 문제는 내 richtext 박스가있는 부모 윈도우로 되돌아 갈 수 없다는 것입니다. –

+0

그것이 중재자와 무슨 상관입니까. 새 양식은 "searchString ("test ")"와 같은 메시지를 보내야합니다. 예를 들어, MVVM Light 메신저 (메신저를 사용할 수 있음)와 함께 어떻게 작동하는지 확인할 수 있습니다. 메신저를 사용하고 싶지 않다면 이벤트를 사용해야합니다. http://msdn.microsoft.com/en-us/library/awbftdfh.aspx – zapico

+0

ok .. 새로운 양식/대화 상자를 만들려고합니다. 내 페이지와 별도로 검색 할 수 있습니다. –

관련 문제