2010-07-08 5 views
0

Microsoft 나레이터에 문제가 있습니다.내레이터의 읽기 순서가 잘못되었습니다.

나는이 같은 WPF 조각을 가지고 :

<Window 
    x:Class="InlineEditbox.Window1" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="Narrator test" SizeToContent="WidthAndHeight"> 
    <TextBlock> 
     <Run xml:space="preserve">I want to pay </Run> 
     <InlineUIContainer> 
      <TextBox Width="70" HorizontalContentAlignment="Right">0</TextBox> 
     </InlineUIContainer> 
     <Run xml:space="preserve"> % more</Run> 
    </TextBlock> 
</Window> 

텍스트가 올바르게 표시됩니다; 그러나 내레이터는 "나는 0 % 더 지불하고 싶다"대신 "나는 더 많은 것을 제로로 지불하고 싶다."라고 읽는다.

내가 잘못 했나요? 내레이터는 결과적으로 전체 텍스트를 읽을 수있었습니다. 실제 텍스트를 변경할 필요없이 문제를 해결할 수있는 방법이 있습니까?

답변

1

내레이터를 사용하지 마십시오. 매우 기본적인 스크린 읽기 프로그램이며 일반적으로 스크린 리더를 매일 사용해야하는 사람들은 일반적으로 사용하지 않습니다. 사용할 화면 판독기에 대한 다음 질문을 참조하십시오. WPF 팀 구성원에서 Which screen reader would be best to test site accessibility and how to configure that?

+0

나는 '돈 : 해결 과정

, 하나는 자동화로 변환하는 방법의 순서를 설명하기 위해 별도의 컨트롤에 텍스트를 넣을 수 있습니다 내레이터를 직접 사용하지 마십시오. 그러나 내 코드에 내게 필요한 옵션 기능을 구현해야합니다. 내레이터 지원 중 하나는 다음과 같습니다 .-( – Vlad

+0

이 경우 필자는 기능 요구 사항을 누가 담당했는지 이야기하고 내레이터 지원이 유용하지 않다고 설명합니다. 당신은 스크린 리더를 지원해야합니다. 무료이고 오픈 소스이기 때문에 http://www.nvda-project.org에서 NVDA를 제안 할 것입니다. – Jared

+0

대규모 상업 회사에서 일하면서, 꽤 복잡합니다. 대부분 자신의 시스템에있는 내레이터이므로 명시 적으로 내레이터를 지원해야합니다. 내게 필요한 옵션 지원 소프트웨어에 대한 사용 통계가 있는지 궁금합니다. Google에서 찾으려고합니다. 어쨌든 제안 해 주셔서 감사합니다. – Vlad

1

답변 :

WPF는 텍스트와 혼합 자식 컨트롤을 할 수있는 텍스트 제어를 지원합니다. UI 자동화 트리는 그렇지 않습니다. 하위 편집 컨트롤이 상위 텍스트 내에있는 자동화 클라이언트에 대해서는 설명 할 방법이 없습니다. WPF는 이것을 쉽게 수정할 수 없습니다. 이는 자동화 아키텍처의 한계입니다.

<TextBlock>I want to pay</TextBlock> 
<TextBox> 0 </TextBox> 
<TextBlock>% more</TextBlock> 

들으, 롭 Relyea

WPF 팀

+0

감사합니다. 권위있는 답변을 많이! – Vlad

관련 문제