コード例 #1
0
        private void HandleSelectedDatesChanged()
        {
            ZDatePicker datePicker = this;

            if (datePicker.PART_Calendar == null || datePicker.PART_Calendar_Second == null)
            {
                return;
            }

            datePicker.PART_Calendar.SelectedDates.Clear();
            datePicker.PART_Calendar_Second.SelectedDates.Clear();

            ObservableCollection <DateTime> dt1 = new ObservableCollection <DateTime>();
            ObservableCollection <DateTime> dt2 = new ObservableCollection <DateTime>();

            foreach (DateTime date in datePicker.SelectedDates)
            {
                //选中的日期段可能会跨越好几个月,因此先找出属于第一个日历的日期,然后剩余的日期都显示在第二个日历上面
                if (DateTimeHelper.MonthIsEqual(date, this.PART_Calendar.DisplayDate))
                {
                    dt1.Add(date);
                }
                else
                {
                    dt2.Add(date);
                }
            }

            datePicker.PART_Calendar.SelectedDates        = dt1;
            datePicker.PART_Calendar_Second.SelectedDates = dt2;
        }
コード例 #2
0
        private static object CoerceSelectedDateEnd(DependencyObject d, object value)
        {
            ZDatePicker datePicker = d as ZDatePicker;
            DateTime?   dateTime   = (DateTime?)value;

            if (datePicker.PART_Calendar != null)
            {
                datePicker.PART_Calendar.SelectedDate = dateTime;
            }
            datePicker.SetSelectedDates(datePicker.SelectedDateStart, datePicker.SelectedDateEnd);
            return(dateTime);
        }
コード例 #3
0
        private static object SelectedDateCoerceValueCallback(DependencyObject d, object value)
        {
            ZDatePicker datePicker = d as ZDatePicker;

            DateTime?dateTime = (DateTime?)value;

            if (datePicker.PART_Calendar != null)
            {
                datePicker.PART_Calendar.SelectedDate = dateTime;
            }
            return(dateTime);
        }
コード例 #4
0
        private static void SelectedDateChangedCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            ZDatePicker datePicker = d as ZDatePicker;

            foreach (DateTime date in datePicker.SelectedDates)
            {
                if (date.Year == datePicker.PART_Calendar.DisplayDate.Year &&
                    date.Month == datePicker.PART_Calendar.DisplayDate.Month)
                {
                    datePicker.PART_Calendar.SelectedDates.Add(date);
                }
                else
                {
                    datePicker.PART_Calendar_Second.SelectedDates.Add(date);
                }
            }
        }
コード例 #5
0
        private static void SelectedDateCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            ZDatePicker datePicker = d as ZDatePicker;
            DateTime?   dateTime   = (DateTime?)e.NewValue;

            if (dateTime.HasValue)
            {
                DateTime dt = dateTime.Value;
                if (datePicker.SelectedTime == null)
                {
                    datePicker.SelectedTime = dt;
                }

                datePicker.SetSingleDateToTextBox(dt);
            }
            else
            {
                //TODO
                //显示水印
            }
        }
コード例 #6
0
        /// <summary>
        /// 设置控件的类型
        /// </summary>
        /// <param name="datePicker"></param>
        /// <param name="type"></param>
        private void SetSelectionMode(ZDatePicker datePicker, EnumDatePickerType type)
        {
            switch (type)
            {
            case EnumDatePickerType.SingleDate:
                if (datePicker.PART_Calendar != null)
                {
                    datePicker.PART_Calendar.SelectionMode = CalendarSelectionMode.SingleDate;
                }
                break;

            case EnumDatePickerType.SingleDateRange:
                if (datePicker.PART_Calendar != null)
                {
                    datePicker.PART_Calendar.SelectionMode = CalendarSelectionMode.SingleRange;
                }
                if (datePicker.PART_Calendar_Second != null)
                {
                    datePicker.PART_Calendar_Second.SelectionMode = CalendarSelectionMode.SingleRange;
                }
                break;

            case EnumDatePickerType.Year:
                break;

            case EnumDatePickerType.Month:
                break;

            case EnumDatePickerType.DateTime:
                break;

            case EnumDatePickerType.DateTimeRange:
                break;

            default:
                break;
            }
        }
コード例 #7
0
        void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
        {
            switch (connectionId)
            {
            case 1:
                this.timePicker = ((ZdfFlatUI.TimePicker)(target));
                return;

            case 2:
                this.btnGetDate = ((System.Windows.Controls.Button)(target));

            #line 80 "..\..\..\UITest\UCTDateControl.xaml"
                this.btnGetDate.Click += new System.Windows.RoutedEventHandler(this.btnGetDate_Click);

            #line default
            #line hidden
                return;

            case 3:
                this.btnSetDate = ((System.Windows.Controls.Button)(target));

            #line 82 "..\..\..\UITest\UCTDateControl.xaml"
                this.btnSetDate.Click += new System.Windows.RoutedEventHandler(this.btnSetDate_Click);

            #line default
            #line hidden
                return;

            case 4:
                this.timePicker1 = ((ZdfFlatUI.TimePicker)(target));
                return;

            case 5:
                this.dateTimePicker = ((ZdfFlatUI.DateTimePicker)(target));
                return;

            case 6:
                this.btnGetDateTimePicker = ((System.Windows.Controls.Button)(target));

            #line 93 "..\..\..\UITest\UCTDateControl.xaml"
                this.btnGetDateTimePicker.Click += new System.Windows.RoutedEventHandler(this.btnGetDateTimePicker_Click);

            #line default
            #line hidden
                return;

            case 7:
                this.btnSetDateTimePicker = ((System.Windows.Controls.Button)(target));

            #line 95 "..\..\..\UITest\UCTDateControl.xaml"
                this.btnSetDateTimePicker.Click += new System.Windows.RoutedEventHandler(this.btnSetDateTimePicker_Click);

            #line default
            #line hidden
                return;

            case 8:
                this.tgTheme = ((ZdfFlatUI.FlatToggleButton)(target));

            #line 104 "..\..\..\UITest\UCTDateControl.xaml"
                this.tgTheme.Checked += new System.Windows.RoutedEventHandler(this.FlatToggleButton_Checked);

            #line default
            #line hidden

            #line 105 "..\..\..\UITest\UCTDateControl.xaml"
                this.tgTheme.Unchecked += new System.Windows.RoutedEventHandler(this.FlatToggleButton_Checked);

            #line default
            #line hidden
                return;

            case 9:

            #line 109 "..\..\..\UITest\UCTDateControl.xaml"
                ((ZdfFlatUI.ZCalendar)(target)).SelectedDateChanged += new System.Windows.RoutedPropertyChangedEventHandler <System.Nullable <System.DateTime> >(this.ZCalendar_SelectedDateChanged);

            #line default
            #line hidden
                return;

            case 10:
                this.dateControl1 = ((ZdfFlatUI.ZDatePicker)(target));
                return;

            case 11:
                this.dateControl5 = ((ZdfFlatUI.ZDatePicker)(target));
                return;

            case 12:
                this.dateControl7 = ((ZdfFlatUI.ZDatePicker)(target));
                return;
            }
            this._contentLoaded = true;
        }
コード例 #8
0
        private static void SelectedTimeChangedCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            ZDatePicker datePicker = d as ZDatePicker;

            datePicker.SetSingleDateToTextBox(datePicker.SelectedDate);
        }
コード例 #9
0
        private static void TypeChangedCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            ZDatePicker datePicker = d as ZDatePicker;

            datePicker.SetSelectionMode(datePicker, (EnumDatePickerType)e.NewValue);
        }