예제 #1
0
 private void HandleCollapse(ExpandableViewCustom collapsingView)
 {
     foreach (var view in _expandableViews)
     {
         view.IsTouchToExpandEnabled = true;
     }
 }
예제 #2
0
        private async Task HandleExpend(ExpandableViewCustom expendingView)
        {
            if (_mutex.WaitOne(0))
            {
                foreach (var view in _expandableViews.Where(view => view != expendingView))
                {
                    view.IsExpanded             = false;
                    view.IsTouchToExpandEnabled = false; // Prevent expend while we are
                }

                if (!expendingView.IsTouchToExpandEnabled)
                {
                    await Task.Delay((int)(expendingView.ExpandAnimationLength * 1.3));

                    expendingView.IsTouchToExpandEnabled = true;
                    expendingView.IsExpanded             = true;
                }

                _updateCommands[expendingView]?.Execute(this);
                _mutex.ReleaseMutex();
            }
        }