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);
                }
            }


  • 相关阅读:
    Android中Context具体解释 ---- 你所不知道的Context
    JDK6、Oracle11g、Weblogic10 For Linux64Bit安装部署说明
    matplotlib 可视化 —— 定制 matplotlib
    matplotlib 可视化 —— 移动坐标轴(中心位置)
    matplotlib 可视化 —— 移动坐标轴(中心位置)
    matplotlib 可视化 —— 定制画布风格 Customizing plots with style sheets(plt.style)
    matplotlib 可视化 —— 定制画布风格 Customizing plots with style sheets(plt.style)
    指数函数的研究
    指数函数的研究
    指数分布的研究
  • 原文地址:https://www.cnblogs.com/scottckt/p/1857980.html
Copyright © 2011-2022 走看看