在商业应用系统中,控件间的数据交互十分常见,数据拖拽便是其中一种典型方式。本文所述功能源于实际客户需求,旨在实现将 C1FlexGrid 中的数据通过拖拽操作传递至 C1Schedule 控件,进而自动创建日程安排项,提升用户操作效率与系统易用性。
1、 第一种方法是利用C1FlexGrid与C1Schedule自带的拖拽功能实现,具体完整代码可参见附件中的Form2文件。
2、 只需配置两项属性,利用内置功能即可轻松实现数据拖拽操作。
3、 在C1Schedule的DragDrop事件中,配置Appointment对象的各项属性,确保其状态和数据正确更新,满足功能需求。
4、 {
5、 {
6、 获取被拖拽至日程表中的预约对象。
7、 配置预约对象的各项参数属性
8、 测试任务内容已设置完毕。
9、 }
10、 }
11、 运行程序后,选中 C1FlexGrid 的单元格,光标右上角出现加号时,按住鼠标左键将数据拖动至 C1Schedule 控件中即可完成操作。
12、 第二种方法是采用自定义的C1FlexGrid拖拽功能,具体实现细节可参见附件中Form1的完整代码示例。
13、 通过配置 C1FlexGrid 的特定属性,可自定义其行的显示与交互行为。
14、 在C1FlexGrid的MouseDown事件中,调用其DoDragDrop方法以启动拖放操作。
15、 {
16、 选中单元格后,自动启用拖拽操作功能。
17、 {
18、 创建预约,仅配置了主题属性。
19、 可根据任务类型设定预约的时间、地点等相关信息。
20、 }
21、 }
22、 在 C1Schedule 的 DragDrop 事件中处理并接收拖拽过来的数据。
23、 {
24、 {
25、 获取被拖拽至日程安排中的预约对象。
26、 配置预约对象的各项参数属性
27、 测试任务内容已设置完毕。
28、 }
29、 }
30、 运行程序后,用鼠标左键选中C1FlexGrid中的数据,直接拖拽至C1Schedule控件中即可完成操作。
