DEV SchedulerController 子窗口Appointment实例摸索

最近在做一个会议登记模块,需要用到SchedulerControl控件,一些学习心得在这里记录下。

自定义appointment窗口

  1.新建SchedulerControl1_EditAppointmentFormShowing事件,

  { 

    e.Form = new CustomAppointmentForm(this.schedulerControl1, e.Appointment);//CustomAppointmentForm可以是自己任意新建窗口。

    e.AllowResize = false;

  }

  2.CustomAppointmentForm后台需要添加类CustomAppointmentForm

 1 public class CustomAppointmentFormController : AppointmentFormController
 2   {
 3     public CustomAppointmentFormController(SchedulerControl control, Appointment apt): base(control, apt)
 4     {
 5     }
 6     public event PropertyChangedEventHandler ProperyChanged;
 7
 8     protected override void ApplyChangesCore()
 9     {
10       base.ApplyChangesCore();
11     }
12
13   }

  3.CustomAppointmentForm添加构造函数

 1 public CustomAppointmentForm(SchedulerControl control, Appointment apt)
 2   {
 3     if (control == null || apt == null)
 4     throw new ArgumentNullException("control");
 5     if (control == null || apt == null)
 6     throw new ArgumentNullException("apt");
 7
 8     this.control = control;
 9     this.controller = new CustomAppointmentFormController(control, apt);
10     this.apt = apt;
11     //dateEdit1.DateTime = Convert.ToDateTime (a);
12     //dateEdit1.Text = a;
13     dateEdit1.EditValue = DateTime.Now.TimeOfDay;
14     InitializeComponent();
15   }

  4.实例化刚才定义类同时定义所需属性

1      SchedulerControl control;
2         CustomAppointmentFormController controller;
3         Appointment apt;
4      public CustomAppointmentFormController Controller { get { return controller; } }
5         public SchedulerControl Control { get { return control; } }
6         public Appointment Appointment { get { return apt; } }

  5.前台开始进行新建窗口与SchedulerControl控件属性的绑定。(使用binding)

 1          <TextBlock x:Name="label5" Margin="0,0,4,4"
 2                 HorizontalAlignment="Left"
 3                 Grid.Row="1" Grid.Column="0"
 4                 Text="开始时间:" />
 5               <dxe:DateEdit x:Name="dateStart" Margin="0,0,4,4"
 6                 Grid.Row="1" Grid.Column="1"
 7                 EditValue="{Binding Controller.DisplayStartDate, Mode=TwoWay}"/>
 8               <dxe:ButtonEdit x:Name="timeStart" Margin="0,0,0,4"
 9                 Grid.Row="1" Grid.Column="2"
10                 AllowDefaultButton="False"
11                 MaskType="DateTime" DisplayFormatString="{Binding TimeEditMask}"
12                 Mask="{Binding TimeEditMask}"
13                 EditValue="{Binding Controller.DisplayStartTime, Converter={StaticResource timeSpanToDateTimeConverter}, Mode=TwoWay}"
14                 IsEnabled="{Binding IsChecked, Converter={StaticResource ResourceKey=invertedBoolConverter}, ElementName=chkAllDay}"/>
时间: 2024-10-11 11:55:52

DEV SchedulerController 子窗口Appointment实例摸索的相关文章

子窗口调用父页面js实例

父页面代码: <%@ page contentType="text/html; charset=GBK"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GBK" /> <title>new_page_title</title> <script type="

C#中父窗口和子窗口之间控件互操作实例

本文实例讲述了C#中父窗口和子窗口之间控件互操作的方法.分享给大家供大家参考.具体分析如下: 很多人都苦恼于如何在子窗体中操作主窗体上的控件,或者在主窗体中操作子窗体上的控件.相比较而言,后面稍微简单一些,只要在主窗体中创建子窗体的时候,保留所创建子窗体对象即可. 下面重点介绍前一种,目前常见的有两种方法,基本上大同小异: 第一种,在主窗体类中定义一个静态成员,来保存当前主窗体对象,例如: 代码如下: public static yourMainWindow pCurrentWin = null

VB.NET章鱼哥出品—怎样解决MDI子窗口被父窗口中的控件覆盖的问题

近期有个网友问我这个问题,我就上网搜了下,结果非常失望.有几个在CSDN上发的求助帖.看到最后都没有找到明白的答案. 这里笔者在网上找到了API函数SetParent(),并对网上的错误进行了改动,并给出了简单实例代码. 读者可自行測试: Public Class Form1 '作者:章鱼哥,QQ:3107073263 群:309816713 '如有疑问或好的建议请联系我.大家一起进步 '声明SetParent函数.这是一个API函数 Declare Function SetParent Lib

FineUI小技巧(5)向子窗口传值,向父窗口传值(另附24张专业版高清大图)

前言 FineUI中经常会用到启用IFrame的Window控件,这样有助于从物理上进行代码解耦和.IFrame的引入就会涉及传值问题,如何在父窗口和子窗口之间相互传值呢? 向子窗口传值 向子窗口传值只需要把要传递的参数放在页面URL中即可,一般有两种做法: 页面回发,在后台通过C#代码拼接需要的URL(推荐做法,方便!) 页面第一次加载时,即注册需要的URL(如果参数是页面上某输入框的值,则需要在URL中嵌入JavaScript代码) 来看一个例子,分别用上述两种方式实现: 页面的初始显示 点

WPF FileFolderDialog 和弹出子窗口的一些问题

摘要:本文主要是WPF中 FileFolderDialog的相关问题,补充了关于在父窗口弹出子窗口,以及子窗口的相关属性(Data Binding)和命令绑定(Delegate Command)问题,里面还有关于如何使用读写xml文件内容的方法. 需要注意的地方: (1)对于每一个窗口(父窗口和子窗口),如果涉及到Data Binding相关问题的时候,均需要设置其对应的DataContext(一般为其ViewModel); (2)对于未在构造函数中初始化的属性,需要在定义的时候进行实例化(如下

Qt 代码: 子窗口调用父窗口(其实就是用指针直接访问)

之前的 Qt 编程大多只涉及简单的多窗口,并未染指窗口间的传值交互,想来还是“涉世未深”,对 Qt 的理解.应用还需殷勤努力. 这次的问题是这样的,我想要实现一个类似QQ.阿里旺旺的聊天客户端,在弹出表情对话框后,能够选择表情并返回给聊天窗口的消息输入框,这就需要两个窗口之间的传值交互. 首先想到的解决方法自然是使用Qt自带的signal/slot机制.即首先发信号给父窗口,父窗口接到信号执行槽函数发送一个携带所需数据的信号给子窗口.但是疑问来了:要在子窗口中接收到父窗口的信号必须进行signa

《Windows程序设计》读书笔九 子窗口控件

第九章 子窗口控件 子窗口可以作为控制屏幕图形显示,响应用户输入,以及在有重要输入事件的时候通知另一窗口. 标准子窗口控件,按钮,复选框,编辑框,列表框,组合框,文本字符串和滚动条. 可以使用CreateWindow来创建子窗口控件,或者在程序的资源脚本里编辑好各种属性. 使用预定义控件不需要再注册相应的子窗口类,这些类已经存在于windows中并且已经有了预定义的名称. 在调用CreateWindow时,只需要使用该名称作为窗口类的参数即可. 在窗口表明直接创建子窗口,所涉及的任务比使用对话框

父窗口取子窗口的 js 数组

现在这个系统,用到了大量的选择器 和 自动完成,凭借我的三寸不烂之手, 将这些选择器 和 自动完成做到了最简化, 一路顺风顺水. 今天下午补充一个页面的选择器, 要取一个复杂的 json 对像,用来填充数据.这个 json 对象包含数组, 取出来后,要转变为本地页面(选择器的父页面)的某个"类"的实例. 我用这个方法来将 json 对象转换为某个"类"的对象: 1 _.automap = function (data, type, writeNotExistsPro

简介子窗口控件(api)

子窗口控件 壹佰软件开发小组  整理编译   回忆第七章的CHECKER程序.这些程序显示了矩形网格.当您在一个矩形中按下鼠标按键时,该程序就画一个x:如果您再按一次鼠标按键,那么x就消失.虽然这个程序的CHECKER1和CHECKER2版本只使用一个主窗口,但CHECKER3版本却为每个矩形使用一个子窗口.这些矩形由一个叫做ChildProc的独立窗口消息处理程序维护. 如果有必要,无论矩形是否被选中,都可以给ChildProc增加一种向其父窗口消息处理程序(WndProc)发送消息的手段.通