2012-05-14 3 views
1

그래서 설계중인 응용 프로그램은 목록의 특정 항목을 선택 해제하는 확인란이 포함 된 매우 단순한 목록보기를 사용합니다. Windows 7이 설치된 컴퓨터에서는 완벽하게 정상적으로 실행되지만 Windows XP가 설치된 다른 컴퓨터에서 실행하면 마우스가 매우 느리게 움직여 고르지 않게됩니다. 필자는 프로젝트의 다른 부분이없는 체크 박스가있는 목록보기 인 앱을 작성했으며 여전히 똑같은 작업을 수행합니다. 이것에 뭔가 문제가 있습니까?Windows XP의 ListView 성능이 느림

<ListView Name="lstView" ItemsSource="{Binding List}" HorizontalContentAlignment="Stretch" SelectionMode="Extended"> 
    <ListView.View> 
     <GridView > 
      <GridView.Columns> 
       <GridViewColumn> 
        <GridViewColumnHeader Content="Dummy Column"/> 
       </GridViewColumn> 
       <GridViewColumn> 
        <GridViewColumnHeader Content="Dummy Column2"/> 
        <GridViewColumn.CellTemplate> 
         <DataTemplate> 
          <CheckBox IsChecked="{Binding Bool}" /> 
         </DataTemplate> 
        </GridViewColumn.CellTemplate> 
       </GridViewColumn> 
      </GridView.Columns> 
     </GridView> 
    </ListView.View> 
</ListView> 

XP 시스템에서는 앱이 정상적으로 실행되며 확인란을 마우스로 가리키면 속도가 느려지고 그 이유는 확실하지 않습니다. 아무도 이것을 경험하지 못했거나 쉽게 해결할 수있는 원인을 알고 있습니까?

+0

XP에서 .NET 4.0/3.5로 응용 프로그램을 다시 작성한 다음 실행하면 어떻게됩니까? –

+0

XP에서 빌드하려고 시도 할 수 있습니다. 내일까지 기다려야하므로 알려 드리겠습니다. –

답변

1

체크 박스의 스타일/템플릿에서 스토리 보드 또는 VSM을 사용하여 마우스 오버 효과를 애니메이션으로 적용 하시겠습니까? 아니면 트리거가있는 브러쉬를 교체하고 있습니까? 움직이는 경우 대신 브러쉬를 교체하십시오. 어떤 이유로 XP는 항상 WPF 애니메이션을 잘 처리하지 못합니다.

+0

저는 특별한 것을하지 않고 있습니다. 말 그대로이 xaml 코드를 프로젝트의 다른 부분으로 가져갈 수 있으며 그렇지 않은 경우 적당히 괜찮은 XP 컴퓨터에서 느리게 실행됩니다. –

+0

마우스 오버시 테두리 또는 그리드의 배경을 애니메이션으로 테스트하고 비슷한 문제가 있는지 확인하십시오. 마지막 프로젝트에서는 성능 문제로 인해 모든 기본 제공 애니메이션을 제거한 별도의 XP 스킨을 배포했습니다. – VLTII

+1

컨트롤의 기본 제공 애니메이션을 쉽게 제거 할 수있는 방법은 무엇입니까? –