diff options
Diffstat (limited to 'Xamarin.Forms.Platform.Tizen/Renderers/ListViewRenderer.cs')
-rw-r--r-- | Xamarin.Forms.Platform.Tizen/Renderers/ListViewRenderer.cs | 37 |
1 files changed, 17 insertions, 20 deletions
diff --git a/Xamarin.Forms.Platform.Tizen/Renderers/ListViewRenderer.cs b/Xamarin.Forms.Platform.Tizen/Renderers/ListViewRenderer.cs index 5179d7e0..95a1d120 100644 --- a/Xamarin.Forms.Platform.Tizen/Renderers/ListViewRenderer.cs +++ b/Xamarin.Forms.Platform.Tizen/Renderers/ListViewRenderer.cs @@ -259,7 +259,7 @@ namespace Xamarin.Forms.Platform.Tizen if (e.Action == NotifyCollectionChangedAction.Add) { Cell before = null; - if(e.NewStartingIndex + e.NewItems.Count < Element.TemplatedItems.Count) + if (e.NewStartingIndex + e.NewItems.Count < Element.TemplatedItems.Count) { before = Element.TemplatedItems[e.NewStartingIndex + e.NewItems.Count]; } @@ -289,7 +289,7 @@ namespace Xamarin.Forms.Platform.Tizen { if (e.Action == NotifyCollectionChangedAction.Add) { - TemplatedItemsList<ItemsView<Cell>,Cell> itemsGroup = sender as TemplatedItemsList<ItemsView<Cell>,Cell>; + TemplatedItemsList<ItemsView<Cell>, Cell> itemsGroup = sender as TemplatedItemsList<ItemsView<Cell>, Cell>; Cell before = null; if (e.NewStartingIndex + e.NewItems.Count < itemsGroup.Count) { @@ -407,29 +407,26 @@ namespace Xamarin.Forms.Platform.Tizen /// </summary> void UpdateSelectedItem() { - if (_selectedItemChanging == 0) + if (Element.SelectedItem == null) { - if (Element.SelectedItem == null) + if (_lastSelectedItem != null) { - if (_lastSelectedItem != null) - { - _lastSelectedItem.IsSelected = false; - _lastSelectedItem = null; - } + _lastSelectedItem.IsSelected = false; + _lastSelectedItem = null; } - else + } + else + { + var templatedItems = Element.TemplatedItems; + var results = templatedItems.GetGroupAndIndexOfItem(Element.SelectedItem); + if (results.Item1 != -1 && results.Item2 != -1) { - var templatedItems = Element.TemplatedItems; - var results = templatedItems.GetGroupAndIndexOfItem(Element.SelectedItem); - if (results.Item1 != -1 && results.Item2 != -1) - { - var itemGroup = templatedItems.GetGroup(results.Item1); - var cell = itemGroup[results.Item2]; + var itemGroup = templatedItems.GetGroup(results.Item1); + var cell = itemGroup[results.Item2]; - ++_selectedItemChanging; - Control.ApplySelectedItem(cell); - --_selectedItemChanging; - } + ++_selectedItemChanging; + Control.ApplySelectedItem(cell); + --_selectedItemChanging; } } } |