请选择 进入手机版 | 继续访问电脑版

Aic-tech BBS

 找回密码
 立即注册

扫一扫,访问微社区

搜索
查看: 847|回复: 0

Telerik控件使用随笔之RadGanttView

[复制链接]

15

主题

25

帖子

431

积分

超级版主

Rank: 8Rank: 8

积分
431
发表于 2017-5-9 10:09:36 | 显示全部楼层 |阅读模式

Telerik控件使用随笔之RadGanttView

控件基本使用规则参见链接:Telerik UI for WPF: RadGanttView Overview
本帖仅分享常规文档中并未提及的各种灵活需求如何实现,链接中官网教程中内容不再赘述~

问题一:RadGanttView控件并无isreadonly属性可用,那么如何禁用控件上的drag/drop/resizing以及绘制新连接等操作。
解决方法:
  1. // 禁止用户直接在控件上绘制新连接,重定义CustomDragDependenciesBehavior
  2.     public class CustomDragDependenciesBehavior : GanttDragDependenciesBehavior
  3.     {
  4.         protected override bool CanStartLink(SchedulingLinkState state)
  5.         {
  6.             return false;
  7.         }

  8.         protected override bool CanLink(SchedulingLinkState state)
  9.         {
  10.             return false;
  11.         }
  12.     }
复制代码
  1. // 禁止用户直接在控件上通过拖动调整GanttItem长度,重定义CustomResizeBehavior
  2. public class CustomResizeBehavior : SchedulingResizeBehavior
  3.     {
  4.         protected override bool CanStartResize(SchedulingResizeState state)
  5.         {
  6.             return false;
  7.         }
  8.     }
复制代码
  1. // 禁止用户直接在控件上拖动GanttItem,重定义CustomDragDropBehavior
  2.     public class CustomDragDropBehavior : GanttDragDropBehavior
  3.     {
  4.         protected override bool CanStartDrag(SchedulingDragDropState state)
  5.         {
  6.             return false;
  7.         }
  8.     }
复制代码
  1. // 最后在控件上应用重定义类
  2. <telerik:RadGanttView ……>
  3.                         <telerik:RadGanttView.Columns>
  4. ……
  5.                         </telerik:RadGanttView.Columns>
  6.                         <telerik:RadGanttView.ResizeBehavior>
  7.                             <local:CustomResizeBehavior />
  8.                         </telerik:RadGanttView.ResizeBehavior>
  9.                         <telerik:RadGanttView.DragDropBehavior>
  10.                             <local:CustomDragDropBehavior />
  11.                         </telerik:RadGanttView.DragDropBehavior>
  12.                         <telerik:RadGanttView.DragDependenciesBehavior>
  13.                             <local:CustomDragDependenciesBehavior />
  14.                         </telerik:RadGanttView.DragDependenciesBehavior>
  15.                     </telerik:RadGanttView>
复制代码




决策远比执行要难得多……
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Beijing Advanced Information and Control Co. Ltd.

GMT+8, 2019-12-12 04:51 , Processed in 0.172148 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表