/// <summary>
        /// Finds TableViewScrollViewer in visual tree and adds handler to it's "ScrollChanged" event.
        /// Also adds handler to "Unloaded" event of cell editor to remove handlers when it will be unloaded.
        /// </summary>
        private void _SubscribeEvents()
        {
            Debug.Assert(_cellEditor != null);
            Debug.Assert(_popup != null);

            TableViewScrollViewer scrollViewer = XceedVisualTreeHelper.FindScrollViewer(_cellEditor);

            if (scrollViewer != null)
            {
                _scrollViewer = scrollViewer;
                _scrollViewer.ScrollChanged += new ScrollChangedEventHandler(_ScrollViewerScrollChanged);
            }
            else
            {
                // Do nothing, because scroll viewer wasn't found.
            }
        }
Esempio n. 2
0
 protected override void OnDetachingAndUnloaded()
 {
     scrollViewer.ScrollChanged -= ScrollChanged;
     scrollViewer = null;
     base.OnDetachingAndUnloaded();
 }
Esempio n. 3
0
 protected override void OnAttachedAndLoaded()
 {
     scrollViewer = AssociatedObject.FindVisualChildOfType <TableViewScrollViewer>();
     scrollViewer.ScrollChanged += ScrollChanged;
     base.OnAttachedAndLoaded();
 }