Example #1
0
        private void OnOffsetChangeRequested(IScrollController sender, ScrollControllerOffsetChangeRequestedEventArgs e)
        {
            if (sender == horizontalScrollController)
            {
                LogMessage("CanvasScrollControllerConsumer: OnOffsetChangeRequested for HorizontalScrollController");
                LogMessage("Offset=" + e.Offset + ", OffsetKind=" + e.OffsetKind + ", OffsetChangeKind=" + e.OffsetChangeKind);

                switch (e.OffsetKind)
                {
                case ScrollerViewKind.Absolute:
                {
                    switch (e.OffsetChangeKind)
                    {
                    case ScrollerViewChangeKind.DisableAnimation:
                        Canvas.SetLeft(scrolledElement, -e.Offset);
                        break;
                    }
                    break;
                }
                }
            }
            else if (sender == verticalScrollController)
            {
                LogMessage("CanvasScrollControllerConsumer: OnOffsetChangeRequested for VerticalScrollController");
                LogMessage("Offset=" + e.Offset + ", OffsetKind=" + e.OffsetKind + ", OffsetChangeKind=" + e.OffsetChangeKind);

                switch (e.OffsetKind)
                {
                case ScrollerViewKind.Absolute:
                {
                    switch (e.OffsetChangeKind)
                    {
                    case ScrollerViewChangeKind.DisableAnimation:
                        Canvas.SetTop(scrolledElement, -e.Offset);
                        break;
                    }
                    break;
                }
                }
            }
            else
            {
                LogMessage("CanvasScrollControllerConsumer: OnOffsetChangeRequested for unknown sender");
            }
        }
Example #2
0
 private int RaiseOffsetChangeRequested(
     double offset,
     ScrollerViewKind offsetKind,
     ScrollerViewChangeKind offsetChangeKind)
 {
     LogMessage("ScrollBarController: RaiseOffsetChangeRequested for Orientation=" + Orientation + " with offset =" + offset + ", offsetKind=" + offsetKind + ", offsetChangeKind=" + offsetChangeKind);
     if (OffsetChangeRequested != null)
     {
         ScrollControllerOffsetChangeRequestedEventArgs e =
             new ScrollControllerOffsetChangeRequestedEventArgs(
                 offset,
                 offsetKind,
                 offsetChangeKind);
         OffsetChangeRequested(this, e);
         if (e.ViewChangeId != -1 && !lstOffsetChangeIds.Contains(e.ViewChangeId))
         {
             operationsCount++;
             lstOffsetChangeIds.Add(e.ViewChangeId);
         }
         return(e.ViewChangeId);
     }
     return(-1);
 }
        private void IScrollController_OffsetChangeRequested(IScrollController sender, ScrollControllerOffsetChangeRequestedEventArgs args)
        {
            try
            {
                if (provideViewChangeIds)
                {
                    viewChangeId++;
                    args.ViewChangeId = viewChangeId;
                    AppendAsyncEventMessage("OffsetChangeRequested Created ViewChangeId=" + args.ViewChangeId);

                    lock (asyncEventReportingLock)
                    {
                        viewChangeIds.Add(args.ViewChangeId);
                    }

                    var ignored = this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, ProcessAsyncOperation);
                }
                else
                {
                    AppendAsyncEventMessage("OffsetChangeRequested");
                }
            }
            catch (Exception ex)
            {
                txtExceptionReport.Text = ex.ToString();
                lstScrollBar2Events.Items.Add(ex.ToString());
            }
        }