2012-11-02 9 views
1

16 진수 값 (예 : FFAA-CA10-56D7)을 표시하는 컨트롤을 만들고 있습니다. 지금 가치는 이미지로 구성됩니다. 나는 아무 문제가 없습니다 만 제어 읽기에 대한텍스트 상자에 이미지 사용

enter image description here

: 같은 컨트롤의 값을 보인다. 값에 따라 적절한 이미지를 배치 할 수 있습니다. 예를 들어 FF 값을 설정해야하는 경우 문자열의 문자를 반복하고 해당 이미지를 배치합니다.

이제 문제는 읽기 - 쓰기 컨트롤이있는입니다. 같은 글꼴을 사용할 수 있다면 좋을 것입니다. 지금은 사용자가 값을 입력함에 따라 이미지를 추가합니다. 그러나 친절하지 않다. 사용자가 마우스를 드래그하여 3자를 선택하려면 어떻게해야합니까? 또는 여러 문자를 선택할 shift + 화살표 키 조합을 어떻게 수행 할 수 있습니까?

따라서 짧은 축으로을 사용하면 컨트롤의 모양과 느낌을 그대로 유지하고 텍스트 상자의 이미지를 바꾸지 않을 것입니다. 같은 접근 방식을 유지할 수 있도록 어떤 접근 방식을 권장합니다.

상황은 내가 시도 :

내가 그 PNG 년대에서 내 사용자 지정 글꼴을 만들려고. 그러나 png 이미지에서 글꼴을 만들 수있는 올바른 프로그램을 찾는 데 성공하지 못했습니다.

답변

2

가로 StackPanel을 ItemPanelTemplate으로 사용하는 사용자 지정 ListBox를 사용하면이 작업을 수행 할 수 있으며 해당 ItemsSource는 char 목록이됩니다. 그러면 해당 이미지를 포함하는 적절한 DataTemplate을 제공 할 수 있습니다 (char 값에 따라 다름, 아마도 DataTriggers 사용). ListBox에는 Multiclection이 있으므로 TextBox의 텍스트 선택 동작을 모방하는 데 아무런 문제가 없으며 ListBox에서 EditCommands.Copy를 직접 구현하여 Copy를 허용 할 수있는 ItemsSouce로 char 목록을 가져야합니다.

편집 : 이것은 당신이 확실히 자신의 Custom Control

+0

내가 좋아하는 당신의 아이디어 덕분에 구현하려는 것이다하는 그런 경우 중 하나입니다 –

관련 문제