2011-11-17 1 views
1

커서 위치의 텍스트 상자에 정확하게 정보를 표시하려고합니다. C#의 intellisense와 같지 않습니다. "." 도움이됩니다. 도와주세요. 사진은 도트 (".")에 따라 나타납니다. 그러나 그림에서 언급 한 것에 따라 나타납니다. (영어는 나쁘고 미안합니다.) 의미가 무엇인지 찾아보십시오.커서의 위치에 따라 팝업과 같은 내용 (예 : 정보)을 표시하는 방법은 무엇입니까?

http://msdn.microsoft.com/en-us/library/system.windows.controls.primitives.popup.aspx

은 본질적으로 국경없는 윈도우가 다른 콘텐츠 위에 표시됩니다이 :

enter image description here

+0

당신은이 작업을 수행하는 응용 프로그램을 작성하거나 Visual Studio를 그것을 할 싶어? – novacara

+1

wpf 오른쪽에있는 자동 완성 텍스트 상자 기능을 원하는 것처럼 보입니다 ... –

답변

2

사용자가 텍스트 상자 안의 키를 누를 때마다 OnKeyDown 이벤트를 처리하고 현재 커서 위치를 계산하고 팝업 컨트롤을 다시 그립니다. 이 팝업 컨트롤은 사용자 정의 컨트롤로 정의 할 수 있습니다.

편집 : jberger가 지적했듯이 커서 변경을 처리하기 위해 OnSelectionChanged에 대한 처리기를 구현할 수도 있습니다.

+1

이것은 마지막 문자 위치에서 작동하지만 "커서 위치에서 정확하게"작동하지 않을 수 있습니다. 가능한 한 최대 +1. –

+0

예, 맞습니다. 커서 위치가 변경되었음을 나타내는 다른 이벤트가 있어야합니다. – Tudor

+2

[TextBoxBase.OnSelectionChanged] (http://msdn.microsoft.com/en-us/library/system.windows.controls.primitives.textboxbase.onselectionchanged.aspx) –

1

당신은 팝업을 사용할 수 있습니다.

PlacementMode.Mouse를 속성 Placement에 할당합니다. 팝업 위치를 수정할 수있는 몇 가지 다른 속성이 있습니다.

관련 문제