DynamicArgumentDialog.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 / Presentation / DynamicArgumentDialog.cs / 1407647 / DynamicArgumentDialog.cs

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

namespace System.Activities.Presentation 
{
    using System.Activities.Presentation.Model; 
    using System.Windows; 
    using System.Collections;
    using System.Collections.ObjectModel; 
    using System.Collections.Generic;
    using System.Runtime;

    public sealed class DynamicArgumentDialog : WorkflowElementDialog 
    {
        bool isDictionary; 
        Type underlyingArgumentType; 
        ModelItem data;
 
        DynamicArgumentDialog(ModelItem activity, ModelItem data, EditingContext context, DependencyObject owner, DynamicArgumentDesignerOptions options)
        {
            this.MinHeight = 200;
            this.MinWidth = 700; 
            this.WindowSizeToContent = SizeToContent.Manual;
            this.ModelItem = activity; 
            this.Context = context; 
            this.HelpKeyword = HelpKeywords.DynamicArgumentDialog;
            this.Owner = owner; 
            this.Title = options.Title;
            this.data = data;
            this.Content = new DynamicArgumentDesigner()
            { 
                DynamicArguments = DynamicArgumentDesigner.ModelItemToWrapperCollection(data, out isDictionary, out underlyingArgumentType),
                IsDictionary = isDictionary, 
                UnderlyingArgumentType = underlyingArgumentType, 
                Context = context,
                OwnerActivity = activity, 
                HideDirection = options.HideDirection,
                ArgumentPrefix = options.ArgumentPrefix,
                HintText = options.HintText,
                ParentDialog = this, 
            };
        } 
 
        public static bool ShowDialog(ModelItem activity, ModelItem data, EditingContext context, DependencyObject owner, DynamicArgumentDesignerOptions options)
        { 
            return new DynamicArgumentDialog(activity, data, context, owner, options).ShowOkCancel();
        }

        protected override void OnWorkflowElementDialogClosed(bool? dialogResult) 
        {
            if (dialogResult.Value) 
            { 
                DynamicArgumentDesigner.WrapperCollectionToModelItem((this.Content as DynamicArgumentDesigner).DynamicArguments, data, isDictionary, underlyingArgumentType);
            } 
        }
    }
}

// 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