2014-07-09 1 views
1

최근에 MahApps의 Metro 테마를 wpf 앱에 추가했지만 이제는 내 왼쪽 상단의 애플리케이션 아이콘이 탭 중지로 설정되고 나는 그것을 원하지 않는다. 나는 interwebs를 온갖 방법으로 보았지만 아무 소용이 없었다.MahApps Metro 테마의 아이콘에 "istabstop = false"설정

Snoop을 사용하여 아이콘이 "PART_Icon"이라는 ContentControl이라는 것을 알았지 만 그 속성에 액세스 할 수있는 방법이 없다는 것을 알았습니다.

MahApps.Metro 소스 코드에서 포크를 가져 와서 속성을 변경 한 다음 새로운 .dll을 만드는 방법에 대해 생각해 봤지만 덜 복잡한 솔루션을 찾고 싶습니다.

생각하십니까?

+0

자유롭게 소스를 포크하고 분기를 만들고 포커스를 제거한 다음 변경 사항을 적용한 다음 원래 소스를 참조하십시오. – punker76

답변

2

나는 그것을 알아 냈다. 소스를 포크 할 필요가 없습니다. 나는 메트로 테마에 몇 가지 다른 문제가있어서 컨트롤을 망칠 뿐이므로 리소스 사전에 스타일을 수동으로 설정했다. "ResourceDictionary"태그 안에있는 Application xaml에이 코드를 추가하기 만하면됩니다.

 <Style TargetType="ContentControl"> 
      <Setter Property="IsTabStop" Value="False"/> 
     </Style> 

나는 또한 False로 하나의 IsTabStop을 설정할 수 있도록 초점은 또한 "FlyoutsControl"로 전환 할 것 :

 <Style TargetType="controls:FlyoutsControl"> 
      <Setter Property="IsTabStop" Value="False"/> 
     </Style> 

마지막으로, 참조 위해, 우리는 텍스트 상자가있는 한 문제가 있었다 명심해야 할

 <Style TargetType="TextBox"> 
      <Setter Property="MinWidth" Value="0" /> 
      <Setter Property="MinHeight" Value="0" /> 
     </Style> 

한 가지는이이 타이의 모든 컨트롤이 값을 설정하는 것입니다 : 주어진 우리의 필요를 위해 너무 컸다의 minWidth와의 minHeight는, 그래서 여기에 당신이 그들을 설정하는 방법입니다 pes, 그래서 당신은 이것이 다른 곳에서 당신을 엉망으로 만들지 않는지 확인하기를 원할 것입니다. 나중에가! 행운을 빕니다!