| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | using System.Windows;using System.Windows.Controls;using Microsoft.Xaml.Behaviors;using Syncfusion.Windows.Controls.Gantt;using Syncfusion.Windows.Controls.Gantt.Chart;using Syncfusion.Windows.Controls.Grid;using DependencyObjectExtensions = Syncfusion.Windows.Controls.Gantt.DependencyObjectExtensions;namespace PRSDesktop{    public class GanttSetupBehaviour : Behavior<GanttControl>    {        /// <summary>        ///     Called when [attached].        /// </summary>        protected override void OnAttached()        {            AssociatedObject.Loaded += AssociatedObject_Loaded;        }        /// <summary>        ///     Handles the Loaded event of the AssociatedObject control.        /// </summary>        /// <param name="sender">The source of the event.</param>        /// <param name="e">The <see cref="System.Windows.RoutedEventArgs" /> instance containing the event data.</param>        private void AssociatedObject_Loaded(object sender, RoutedEventArgs e)        {            if (AssociatedObject.GanttGrid != null) AssociatedObject.GanttGrid.UpdateMode = UpdateMode.PropertyChanged;            var chart = DependencyObjectExtensions.FindName<GanttChart>(AssociatedObject, "PART_GanttChart");            if (chart != null)            {                var chartScrollViewer =                    DependencyObjectExtensions.FindName<ScrollViewer>(chart, "PART_GanttChartScrollViewer");                if (chartScrollViewer != null)                {                    // To make the GanttChart's Vertical Scroll bar visible.                    chartScrollViewer.VerticalScrollBarVisibility = ScrollBarVisibility.Visible;                    chartScrollViewer.ScrollChanged += ChartScrollViewer_ScrollChanged;                }            }        }        private void ChartScrollViewer_ScrollChanged(object sender, ScrollChangedEventArgs e)        {            // To sync the GanttGrid's vertical scroll with GanttChart's Vertical scroll offset.            AssociatedObject.GanttGrid.InternalGrid.SetVerticalOffset(e.VerticalOffset);        }        /// <summary>        ///     Called when [detaching].        /// </summary>        protected override void OnDetaching()        {            AssociatedObject.Loaded -= AssociatedObject_Loaded;        }    }}
 |