DevExpress.XtraScheduler 自定义功能

本文档展示了如何在DevExpress.XtraScheduler控件中进行定制,包括设置开始和结束时间、自定义右键菜单、禁用操作、自定义日期加载颜色、自定义日程着色和编辑对话框。此外,还提供了删除日程时的确认提示和数据源的刷新方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using DevExpress.XtraScheduler;
using DevExpress.XtraScheduler.Services;
using DevExpress.XtraScheduler.Commands;
using DevExpress.Utils.Menu;
using DevExpress.XtraScheduler.Drawing;
using Common;
using DevExpress.Utils;

namespace Erp
{
    public partial class FrmSchedulInfo : DevExpress.XtraEditors.XtraForm
    {
        private UserRight UserRight;
        private static DateTime startTime = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
        private static DateTime endTime = startTime.AddMonths(1).AddDays(-1);
        public FrmSchedulInfo()
        {
            InitializeComponent();
            this.UserRight = UserRight.GetUserRight("排课管理");
            SchedulerControl control = this.schedulerControl1;
            //设置开始时间
            control.Start = startTime;
            //需要为月视图类型
            control.ActiveViewType = SchedulerViewType.Month;
            control.DayView.TopRowTime = new TimeSpan(10, 0, 0);
            control.GroupType = SchedulerGroupType.None;
            control.DayView.TimeIndicatorDisplayOptions.ShowOverAppointment = true;

            //新增、删除、修改动作后刷新数据
            this.schedulerDataStorage1.AppointmentsChanged += OnAppointmentChangedInsertedDeleted;
            this.schedulerDataStorage1.AppointmentsInserted += OnAppointmentChangedInsertedDeleted;
            this.schedulerDataStorage1.AppointmentsDeleted += OnAppointmentChangedInsertedDeleted;

            //禁用日程增加、删除、修改、拖拉等操作
            control.OptionsCustomization.AllowAppointmentCreate = DevExpress.XtraScheduler.UsedAppointmentType.Custom;
            control.OptionsCustomization.AllowAppointmentDelete = DevExpress.XtraScheduler.UsedAppointmentType.Custom;
            control.OptionsCustomization.AllowAppointmentEdit = DevExpress.XtraScheduler.UsedAppointmentType.Custom;
            control.OptionsCustomization.AllowAppointmentDrag = DevExpress.XtraScheduler.UsedAppointmentType.None;
            control.OptionsCustomization.AllowAppointmentMultiSelect = false;
            control.OptionsRangeControl.AllowChangeActiveView = false;
            //礼拜一放在前面。礼拜六和礼拜天分开
            control.Views.MonthView.CompressWeekend = false;
            control.OptionsBehavior.ShowRemindersForm = false;
        }

        /// <summary>
        /// 新增、删除、修改动作后刷新数据
        /// </summary>
        private void OnAppointmentChangedInsertedDeleted(object sender, PersistentObjectsEventArgs e)
        {
            RefreshData();
        }

        /// <summary>
        /// 自定义右键菜单
        /// </summary>
        private void SchedulerControl1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e)
        {
           

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值