// 键盘事件 private async void TilesView_KeyDown(object sender, KeyRoutedEventArgs e) { switch (e.Key) { case Windows.System.VirtualKey.Escape: { if (PrevisualView.IsPrevisualExtend) { PrevisualView.IsPrevisualExtend = false; } else if (TilesView.SelectedIndex != -1) { TilesView.SelectedIndex = -1; } } break; case Windows.System.VirtualKey.Space: { PrevisualView.TogglePrevisual(TilesView.SelectedItem as StorageEntry); } break; case Windows.System.VirtualKey.Enter: { if (TilesView.SelectedItem is StorageEntry selectedEntry) { switch ((string)PreferenceAgency.Default.GetLocalSetting(RIdentifiers.FiledEnterKeyAction)) { case RIdentifiers.EnterKeyAction.RenameEntry: await this.RenameEntryAsync(selectedEntry, folderEntry); break; case RIdentifiers.EnterKeyAction.LaunchEntry: switch (selectedEntry.EntryType) { case StorageEntryType.File: this.OpenFileAsync(selectedEntry); break; case StorageEntryType.Folder: this.OpenFolderAsync(selectedEntry); break; } break; } } } break; } }
// 事件 private void TilesView_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (Container.IsInfoPanelOpen && e.AddedItems.First() is StorageEntry infoPanelEntry) { switch (infoPanelEntry.EntryType) { case StorageEntryType.File: PreviewPanel.SwitchPreviewSource(infoPanelEntry); break; case StorageEntryType.Folder: break; } } if (PrevisualView.IsPrevisualExtend && e.AddedItems.First() is StorageEntry previsualEntry) { switch (previsualEntry.EntryType) { case StorageEntryType.File: PrevisualView.TogglePrevisual(previsualEntry); break; case StorageEntryType.Folder: PrevisualView.IsPrevisualExtend = false; break; } } }