找回密码
 立即注册

QQ登录

只需一步,快速开始

Hakuya_cc

注册会员

10

主题

48

帖子

180

积分

注册会员

积分
180

圣诞拼拼乐微信认证勋章

Hakuya_cc
注册会员   /  发表于:2020-7-3 16:57  /   查看:3952  /  回复:3
5金币
本帖最后由 Hakuya_cc 于 2020-7-3 17:00 编辑


现状:
(鼠标一直是抵住左键状态)当把test计划拖动到【全天计划区】(黄框处),
这时候再想拖动下来就无法拖动到【具体时间区】(12,1,2。。。点所对应的格子区)。
只能通过松开鼠标左键,再次拖动才可以拖回具体时间区(12,1,2。。。点所对应的格子区)。

在进入全天计划区后,如果不再重新拖动是不能再把计划拖回具体时间区
想要的效果:
在拖动计划时如果到达【全天计划区】要像拖动超出日程表范围那样的处理。
拖动的计划鼠标指针到达【全天计划区】(黄框处)时变成禁止符号拖动的计划回到拖放之前的位置。

这样的效果应该如何实现呢?




附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

没有办法禁用,即使在AppointmentChanged事件中判断,也只能是设置这个appointment不是全天事件,以及设置具体事件,但是仍无法直接拖动出来的

3 个回复

倒序浏览
最佳答案
最佳答案
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-7-3 16:57:33
来自 4#
没有办法禁用,即使在AppointmentChanged事件中判断,也只能是设置这个appointment不是全天事件,以及设置具体事件,但是仍无法直接拖动出来的

  1.         private void C1Schedule1_AppointmentChanged(object sender, C1.C1Schedule.AppointmentEventArgs e)
  2.         {
  3.             if (e.Appointment.AllDayEvent&& mousedown)
  4.             {
  5.                 e.Appointment.AllDayEvent = false;
  6.                 e.Appointment.Start = e.Appointment.Start.AddHours(1);
  7.                 e.Appointment.End = e.Appointment.End.AddHours(1);
  8.             }
  9.         }
复制代码
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-7-3 18:19:07
2#
您好,这个因为是控件设计原因,目前无法通过代码等方式更改
回复 使用道具 举报
Hakuya_cc
注册会员   /  发表于:2020-7-6 08:33:11
3#
Richard.Ma 发表于 2020-7-3 18:19
您好,这个因为是控件设计原因,目前无法通过代码等方式更改

有没有可能用别的方法去禁用这个操作呢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部