Exemple #1
0
 private static void OnRegisterCommandBindingChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
 {
     System.Windows.Controls.Calendar element = sender as System.Windows.Controls.Calendar;
     if (element != null)
     {
         System.Windows.Controls.CalendarBlackoutDatesCollection bindings = e.NewValue as System.Windows.Controls.CalendarBlackoutDatesCollection;
         if (bindings != null)
         {
             element.BlackoutDates.Clear();
             foreach (var dateRange in bindings)
             {
                 element.BlackoutDates.Add(dateRange);
             }
         }
     }
 }
Exemple #2
0
        public HistoryViewerViewModel(Window window, System.Windows.Controls.Calendar calendar) //TODO: Should use callback to UI instead?
        {
            this.window   = window;
            this.calendar = calendar;

            DateStyleConverter.Logs = null;

            calendar.DisplayDateStart = GetStartDate();
            calendar.DisplayDateEnd   = DateTime.Today.AddDays(-1);
            calendar.DisplayDate      = calendar.DisplayDateEnd.Value;

            SelectedDate = calendar.DisplayDateEnd;

            tasksView        = new CollectionViewSource();
            tasksView.Source = tasks;
            LoadTasksList();
        }
        public void UpdateViewSelectedDates(Calendar calendar)
        {
            if ((calendar == null) || (calendar.SelectedDates == null))
            {
                return;
            }

            // That is for forcing Start and EndDate to be updated before calculating the period.
            NotifyOfPropertyChange(() => Item);

            var numberOfDays = ((Item.EndDate - Item.StartDate).Days + 1);

            if (numberOfDays > 0)
            {
                calendar.SelectedDates.AddRange(Item.StartDate, Item.EndDate);
            }
        }
        //==============================================================================================
        // TODO: FIX ME! This is an ugly way of doing "binding" to Calendar.SelectedDates which is
        // not a dependency property. This is only one way (VM->V) => for creating new requests is
        // enaugh but not for editing existent ones.
        public void UpdateModelSelectedDates(Calendar calendar)
        {
            if (UseStartEndDateSelection ||
                (calendar == null) || (calendar.SelectedDates == null) || !calendar.SelectedDates.Any())
            {
                return;
            }

            Item.StartDate = calendar.SelectedDates.Min();
            Item.EndDate   = calendar.SelectedDates.Max();

            NotifyOfPropertyChange(() => Item);

            // This forces calendar to release mouse in order to be able to click on other things
            // only once after you selected some dates in calendar not twice.
            calendar.CaptureMouse();
            calendar.ReleaseMouseCapture();
        }
 public override IDisposable DatePrompt(DatePromptConfig config)
 {
     Dispatch(() =>
     {
         var calendar = new System.Windows.Controls.Calendar()
         {
             DisplayDateStart = config.MinimumDate,
             DisplayDateEnd   = config.MaximumDate,
             DisplayMode      = System.Windows.Controls.CalendarMode.Month,
             SelectionMode    = System.Windows.Controls.CalendarSelectionMode.SingleDate
         };
         if (config.SelectedDate != null)
         {
             DateTime selectedDate = DateTime.Today;
             if (selectedDate > (config.SelectedDate ?? DateTime.MaxValue))
             {
                 selectedDate = config.SelectedDate ?? DateTime.MaxValue;
             }
             if (selectedDate < (config.SelectedDate ?? DateTime.MinValue))
             {
                 selectedDate = config.SelectedDate ?? DateTime.MinValue;
             }
             calendar.SelectedDate = selectedDate;
         }
         FormsContentDialog dialog = new FormsContentDialog()
         {
             Title   = config.Title,
             Content = new System.Windows.Controls.Viewbox()
             {
                 Stretch          = System.Windows.Media.Stretch.Uniform,
                 StretchDirection = System.Windows.Controls.StretchDirection.UpOnly,
                 Child            = calendar,
             },
             IsPrimaryButtonEnabled   = true,
             PrimaryButtonText        = config.OkText,
             IsSecondaryButtonEnabled = config.IsCancellable,
             SecondaryButtonText      = config.CancelText
         };
         dialog.PrimaryButtonClick   += (s, e) => { HideContentDialog(); config.OnAction(new DatePromptResult(true, calendar.SelectedDate ?? DateTime.Today)); e.Cancel = true; };
         dialog.SecondaryButtonClick += (s, e) => { HideContentDialog(); config.OnAction(new DatePromptResult(false, calendar.SelectedDate ?? DateTime.Today)); e.Cancel = true; };
         ShowContentDialog(dialog);
     });
     return(new DisposableAction(HideContentDialog));
 }
		public override Sybase.PowerBuilder.PBLong clicked()
		{
			#line hidden
			System.Windows.Controls.Calendar l_cal = null;
			Sybase.PowerBuilder.PBLong ancestorreturnvalue = Sybase.PowerBuilder.PBLong.DefaultValue;
			#line 2
			l_cal =  new System.Windows.Controls.Calendar();
			#line hidden
			#line 5
			((System.Windows.Controls.Grid)((c__w_weather)(Parent)).l_grid.InnerControl).Children.Add((System.Windows.UIElement)(l_cal));
			#line hidden
			#line 6
			((System.Windows.Controls.Grid)((c__w_weather)(Parent)).l_grid.InnerControl).RegisterName(new Sybase.PowerBuilder.PBString("l_cal"), l_cal);
			#line hidden
			#line 7
			System.Windows.Controls.Canvas.SetLeft((System.Windows.UIElement)(l_cal), (double)(Sybase.PowerBuilder.PBDouble)(new Sybase.PowerBuilder.PBInt(0)));
			#line hidden
			#line 8
			System.Windows.Controls.Canvas.SetTop((System.Windows.UIElement)(l_cal), (double)(Sybase.PowerBuilder.PBDouble)(new Sybase.PowerBuilder.PBInt(500)));
			#line hidden
			#line 11
			Sybase.PowerBuilder.WPF.PBSystemFunctions.MessageBox(new Sybase.PowerBuilder.PBString(""), Sybase.PowerBuilder.WPF.PBSystemFunctions.String(((Sybase.PowerBuilder.PBAny)(((Sybase.PowerBuilder.PBExtObject)((c__w_weather)(Parent)).dw_weather.Object)[
				#line 11
				new Sybase.PowerBuilder.PBString(@"returnvalue"), 
				#line 11
				new Sybase.PowerBuilder.PBUInt(1), 
				#line 11
				new Sybase.PowerBuilder.PBUnboundedLongArray(new Sybase.PowerBuilder.PBLong[1]{(Sybase.PowerBuilder.PBLong)(new Sybase.PowerBuilder.PBInt(1))}) ,
				#line 11
				Sybase.PowerBuilder.PBBoolean.True
			#line 11
			]))));
			#line hidden
			return new Sybase.PowerBuilder.PBLong(0);
		}
Exemple #7
0
 public Calendar()
 {
     C = new System.Windows.Controls.Calendar();
 }
        public void UpdateViewSelectedDates(Calendar calendar)
        {
            if ((calendar == null) || (calendar.SelectedDates == null))
                return;

            // That is for forcing Start and EndDate to be updated before calculating the period.
            NotifyOfPropertyChange(() => Item);

            var numberOfDays = ((Item.EndDate - Item.StartDate).Days + 1);
            if (numberOfDays > 0)
                calendar.SelectedDates.AddRange(Item.StartDate, Item.EndDate);
        }
        //==============================================================================================
        // TODO: FIX ME! This is an ugly way of doing "binding" to Calendar.SelectedDates which is
        // not a dependency property. This is only one way (VM->V) => for creating new requests is
        // enaugh but not for editing existent ones.
        public void UpdateModelSelectedDates(Calendar calendar)
        {
            if (UseStartEndDateSelection ||
                (calendar == null) || (calendar.SelectedDates == null) || !calendar.SelectedDates.Any())
                return;

            Item.StartDate = calendar.SelectedDates.Min();
            Item.EndDate = calendar.SelectedDates.Max();

            NotifyOfPropertyChange(() => Item);

            // This forces calendar to release mouse in order to be able to click on other things
            // only once after you selected some dates in calendar not twice.
            calendar.CaptureMouse();
            calendar.ReleaseMouseCapture();
        }
Exemple #10
0
 public CalendarAutomationPeer(System.Windows.Controls.Calendar owner) : base(default(System.Windows.FrameworkElement))
 {
 }