저는 AppBarButton을 사용하고 있습니다. 하나의 조건을 기반으로 AppBarButton 클릭 또는 플라이 아웃을 추가 입력으로 실행하려는 경우, 플라이 아웃이 appbar 버튼에있을 때 항상 버튼을 누르면 열립니다. 클릭 수플라이 아웃 개방을 동적으로 방지합니다.
플라이 아웃을 허용 할 위치를 결정할 수있는 방법이 있습니까? 컨트롤이 버튼 클래스로부터 파생되는 경우
<AppBarButton x:Uid="Accept" Label="Accept"
ToolTipService.ToolTip="{Binding Label, RelativeSource={RelativeSource Mode=Self}}"
Icon="Accept"
Command="{Binding AcceptAppBarCommand}"
behaviors:AppBarButtonBehavior.AllowFocusOnInteraction="True">
<AppBarButton.Flyout>
<Flyout Placement="Bottom" >
<StackPanel Width="200">
<PasswordBox Header="Enter password:"
Password="{Binding Path=Password, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
<Button Margin="0 5 0 0" Content="Accept"
Command="{Binding AcceptCommand}">
</Button>
</StackPanel>
</Flyout>
</AppBarButton.Flyout>
</AppBarButton>
이 Ans는 MVVM 패턴이 아닌 코드 숨김을 통해 문제를 해결하지만 작동합니다. –
@RahulSonone MVVM조차도 약간의 코드가 필요합니다. 답을 살펴보십시오. 스타일 변경 때문에 이것이 확실한가요? 나는 플라이 아웃 (Border)의 내용을 숨기면 죽을 것이라고 생각합니다. 그러면 간단히 표시되지 않습니다. 나는 대답을 편집하고 MVVM의 경우 유용 할 수있는 몇 가지 링크를 추가했습니다. – Romasz
https://marcominerva.wordpress.com/2015/01/15/how-to-open-and-close-flyouts-in-universal-apps-using-mvvm/ 내가 사용할 수있는 좋은 하나이지만 시간 스타일이 나를 위해 잘 작동합니다. –