zoukankan      html  css  js  c++  java
  • WF中依赖属性的定义方法


    WF中依赖属性特点:        

      依赖属性是属性值存储在一个中央存储库中。而不是实现为类中的普通实例变量。

      依赖属性的主要优势在于允许在运行时绑定属性值到实例数据。绑定所产生的属性实际值则是在运行时确定的。

      要想绑到两个活动的属生时,就需要使用依赖项属性。

    WF中依赖属性定义的方法:

      定义某属性的依赖属性,需要用此“属性名”+“Property”的方式定义依赖属性,否则会出错。如下边代码给出了正确与错误的定义方法,可以对比一下。

    正确定义方法:

            //正确
            public static DependencyProperty AccountIdProperty =
               System.Workflow.ComponentModel.DependencyProperty.Register("AccountId"
               
    typeof(Int32), typeof(ValidateAccountActivity));

            
    /// <summary>
            
    /// 定单账户
            
    /// </summary>
            [Description("Identifies the account")] //可视化设计器在引用组件成员时可以显示指定的说明
            [Category("CodeActive Example")]        //用于给属性或事件分组的类别的名称。
            [Browsable(true)]                       //指定一个属性 (Property) 或事件是否应显示在“属性”窗口中。
            [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]  //指定在设计时序列化组件上的属性 (Property) 时所使用的持久性类型。
            public Int32 AccountId
            {
                
    get
                {
                    
    return ((Int32)(base.GetValue(Workflow1.AccountIdProperty)));
                }
                
    set
                {
                    
    base.SetValue(Workflow1.AccountIdProperty, value);
                }
            }


     错误定义方法:

            //错误
            public static DependencyProperty AccountNamePperty =
              System.Workflow.ComponentModel.DependencyProperty.Register(
    "AccountName"
              
    typeof(Int32), typeof(ValidateAccountActivity));

            [Description(
    "Identifies the accout")]
            [Category(
    "Custom Activity Example")]
            [Browsable(
    true)]
            [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
            
    public Int32 AccountName
            {
                
    get
                {
                    
    return ((Int32)(base.GetValue(ValidateAccountActivity.AccountNamePperty)));
                }
                
    set
                {
                    
    base.SetValue(ValidateAccountActivity.AccountNamePperty, value);
                }
            }


  • 相关阅读:
    图解SSH隧道功能
    su和sudo命令的用法
    Linux下下载百度网盘资料
    WPS Office 2019 for Linux来了
    Linux下的录屏软件Kazam
    用hdparm获取硬盘参数
    百度,你能不能有点节操?
    locate的基本用法
    Java class不分32位和64位
    Web站点抓取工具webhttrack
  • 原文地址:https://www.cnblogs.com/scottckt/p/1857980.html
Copyright © 2011-2022 走看看