diff options
author | Paul DiPietro <pauldipietro@users.noreply.github.com> | 2016-09-30 14:28:08 -0500 |
---|---|---|
committer | Jason Smith <jason.smith@xamarin.com> | 2016-09-30 12:28:08 -0700 |
commit | 97bc024a0ede694d867e65568aa045acfa6b99b3 (patch) | |
tree | 0e147368e665b1bf1bea894de1fbb4338f8cb1b1 | |
parent | 4b06bc212f0ff9b813693d6acbeaf23ccac38091 (diff) | |
download | xamarin-forms-97bc024a0ede694d867e65568aa045acfa6b99b3.tar.gz xamarin-forms-97bc024a0ede694d867e65568aa045acfa6b99b3.tar.bz2 xamarin-forms-97bc024a0ede694d867e65568aa045acfa6b99b3.zip |
[WinRT] Fix regression on ListView selection with enter key (#402)
-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) |