InvokeMethodDesigner.xaml.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Core.Presentation / System / Activities / Core / Presentation / InvokeMethodDesigner.xaml.cs / 1305376 / InvokeMethodDesigner.xaml.cs

                            //---------------------------------------------------------------- 
// Copyright (c) Microsoft Corporation.  All rights reserved.
//---------------------------------------------------------------

namespace System.Activities.Core.Presentation 
{
    using System; 
    using System.Activities.Expressions; 
    using System.Activities.Statements;
    using System.Activities.Presentation; 
    using System.Activities.Presentation.Metadata;
    using System.Activities.Presentation.PropertyEditing;
    using System.ComponentModel;
    using System.Activities.Presentation.View; 

    ///  
    /// Interaction logic for InvokeMethodDesigner.xaml 
    /// 
    partial class InvokeMethodDesigner 
    {
        public InvokeMethodDesigner()
        {
            InitializeComponent(); 
        }
 
        public static void RegisterMetadata(AttributeTableBuilder builder) 
        {
            Type type = typeof(InvokeMethod); 
            builder.AddCustomAttributes(type, new DesignerAttribute(typeof(InvokeMethodDesigner)));
            builder.AddCustomAttributes(
                        type,
                        "GenericTypeArguments", 
                        PropertyValueEditor.CreateEditorAttribute(typeof(TypeCollectionPropertyEditor)),
                        new EditorOptionsAttribute { Name = TypeCollectionPropertyEditor.AllowDuplicate, Value = true }); 
            builder.AddCustomAttributes( 
                        type,
                        "Parameters", 
                        PropertyValueEditor.CreateEditorAttribute(typeof(ArgumentCollectionPropertyEditor)));
            builder.AddCustomAttributes(
                        type,
                        "TargetType", 
                        new EditorOptionsAttribute { Name = TypePropertyEditor.AllowNull, Value = true },
                        new EditorOptionsAttribute { Name = TypePropertyEditor.BrowseTypeDirectly, Value = false }); 
            builder.AddCustomAttributes(type, new ActivityDesignerOptionsAttribute { AllowDrillIn = false }); 

            ArgumentFixer.RegisterArgumentFixer( 
                new ActivityArgumentFixer
                (
                    (invoke, isLocation) => isLocation?(Argument)invoke.Result : (Argument)invoke.TargetObject,
                    (invoke, argument) => 
                    {
                        if (argument is InArgument) 
                        { 
                            invoke.TargetObject = (InArgument)argument;
                        } 
                        else
                        {
                            invoke.Result = (OutArgument)argument;
                        } 
                    }
                ) 
                ); 
        }
    } 
}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.


                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK