저장과 같은 여러 기능에 대한 액세스 키 바로 가기를 제공해야합니다. 이렇게하려면 LayoutRoot라는 그리드 인 루트 객체의 KeyUp 이벤트 (일반적으로 Silverlight UserControl 또는 Page에서 기본적으로 생성 된)를 처리하여 시작했습니다. 이 때문에 나는 Windows 키를 사용하고Silverlight 액세스 키 바로 가기
private void LayoutRoot_KeyUp(object sender, KeyEventArgs e)
{
switch (e.Key)
{
case Key.S:
if ((Keyboard.Modifiers & ModifierKeys.Windows) == ModifierKeys.Windows)
{
e.Handled = true;
// save
}
break;
case Key.C:
if ((Keyboard.Modifiers & ModifierKeys.Windows) == ModifierKeys.Windows)
{
e.Handled = true;
// clear fields
}
break;
}
}
:
(그것은 확인을 것 같다, 그래서이 UI 상호 작용이다) 나는 MVVM 패턴을 사용하고 있지만 내가 같은 뒤에 코드에 코드를 추가 한 내가 아는 한 그것을 사용하는 브라우저에는 쇼케이스가 없다.
명령을 사용하여 저장 버튼에 저장 기능을 구현하므로 MVVM 패턴을 유지 관리합니다. 예 : XAML에서
public RelayCommand CommandSavePtr { get; private set; }
CommandSavePtr = new RelayCommand(OnSavePtr);
private void OnSavePtr()
{
....
: -
<Button x:Name="SavePtrButton"
Command="{Binding CommandSavePtr}"
Style="{StaticResource StandardButtonStyle}"
IsEnabled="{Binding Ptr.HasErrors, Converter={StaticResource NotOperatorValueConverter}}">
<StackPanel Orientation="Horizontal">
<Image Source="/G4SPrisonerEscorting_ResourceDictionaries;component/images/accept.png" Style="{StaticResource SubPanelIconStyle}"/>
<TextBlock Text="Save"/>
</StackPanel>
</Button>
내 문제는 지금은 내 위의 KeyUp 이벤트에서 뷰 모델로 의사 소통을하는 것은 클릭하면 perfomed 동일한 저장 기능을 수행하는 방법을 모르는 것입니다 저장 버튼.
누구나 올바른 방향으로 나를 가리킬 수 있습니까?
BTW 나는 GalaSoft의 MVVM Light를 사용하여 Commanding을하고 있습니다.