using System.Collections.Specialized;
using System.Linq;
-namespace Tizen.NUI.XamlBinding
+namespace Tizen.NUI.Binding
{
internal class ObservableWrapper<TTrack, TRestrict> : IList<TRestrict>, INotifyCollectionChanged where TTrack : Element where TRestrict : TTrack
{
if (e.NewStartingIndex == -1 || e.NewItems?.Count > 1)
goto case NotifyCollectionChangedAction.Reset;
- var newItem = e.NewItems[0] as TRestrict;
+ var newItem = e.NewItems?[0] as TRestrict;
if (newItem == null || !newItem.Owned)
break;
if (e.NewStartingIndex == -1 || e.OldStartingIndex == -1 || e.NewItems?.Count > 1)
goto case NotifyCollectionChangedAction.Reset;
- var movedItem = e.NewItems[0] as TRestrict;
+ var movedItem = e.NewItems?[0] as TRestrict;
if (movedItem == null || !movedItem.Owned)
break;
if (e.OldStartingIndex == -1 || e.OldItems?.Count > 1)
goto case NotifyCollectionChangedAction.Reset;
- var removedItem = e.OldItems[0] as TRestrict;
+ var removedItem = e.OldItems?[0] as TRestrict;
if (removedItem == null || !removedItem.Owned)
break;
if (e.NewStartingIndex == -1 || e.OldStartingIndex == -1 || e.NewItems?.Count > 1)
goto case NotifyCollectionChangedAction.Reset;
- var newReplaceItem = e.NewItems[0] as TRestrict;
+ var newReplaceItem = e.NewItems?[0] as TRestrict;
var oldReplaceItem = e.OldItems?[0] as TRestrict;
if ((newReplaceItem == null || !newReplaceItem.Owned) && (oldReplaceItem == null || !oldReplaceItem.Owned))