diff options
author | Paul DiPietro <paul.dipietro@microsoft.com> | 2016-09-30 13:17:32 -0500 |
---|---|---|
committer | Jason Smith <jason.smith@xamarin.com> | 2016-09-30 12:28:19 -0700 |
commit | 65e06eef9051d5930d368f87c87d70044fc27f79 (patch) | |
tree | f8cd21d56dbba537e78cf5c9aa413d840b386aee | |
parent | 48b91865634df4888a43ea899d107953c5aabd58 (diff) | |
download | xamarin-forms-65e06eef9051d5930d368f87c87d70044fc27f79.tar.gz xamarin-forms-65e06eef9051d5930d368f87c87d70044fc27f79.tar.bz2 xamarin-forms-65e06eef9051d5930d368f87c87d70044fc27f79.zip |
[WinRT] Fix regression on ListView selection with enter key
-rw-r--r-- | Xamarin.Forms.Platform.WinRT/ListViewRenderer.cs | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/Xamarin.Forms.Platform.WinRT/ListViewRenderer.cs b/Xamarin.Forms.Platform.WinRT/ListViewRenderer.cs index d65f7f6f..db581d52 100644 --- a/Xamarin.Forms.Platform.WinRT/ListViewRenderer.cs +++ b/Xamarin.Forms.Platform.WinRT/ListViewRenderer.cs @@ -511,7 +511,12 @@ namespace Xamarin.Forms.Platform.WinRT void OnKeyPressed(object sender, KeyRoutedEventArgs e) { if (e.Key == VirtualKey.Enter) - OnListItemClicked(List.SelectedIndex); + { + if (Element.SelectedItem != null && Element.SelectedItem != List.SelectedItem) + { + ((IElementController)Element).SetValueFromRenderer(ListView.SelectedItemProperty, List.SelectedItem); + } + } } void OnControlSelectionChanged(object sender, SelectionChangedEventArgs e) @@ -535,13 +540,6 @@ namespace Xamarin.Forms.Platform.WinRT } } #endif - - // This is used for respecting ListView selection changes via keyboard, as the SelectedItem - // value is otherwise not set. - if (Element.SelectedItem != null && Element.SelectedItem != List.SelectedItem) - { - ((IElementController)Element).SetValueFromRenderer(ListView.SelectedItemProperty, List.SelectedItem); - } } FrameworkElement FindElement(object cell) |