IfElseDesigner.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 / IfElseDesigner.xaml.cs / 1305376 / IfElseDesigner.xaml.cs

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

namespace System.Activities.Core.Presentation 
{
    using System; 
    using System.Activities.Presentation.Metadata; 
    using System.Activities.Presentation.View;
    using System.Activities.Presentation.Converters; 
    using System.Activities.Statements;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Runtime; 
    using System.Windows;
    using System.Windows.Data; 
 
    /// 
    /// Interaction logic for IfElseDesigner.xaml 
    /// 
    partial class IfElseDesigner
    {
        public IfElseDesigner() 
        {
            InitializeComponent(); 
        } 

        public static void RegisterMetadata(AttributeTableBuilder builder) 
        {
            Type type = typeof(If);
            builder.AddCustomAttributes(type, new DesignerAttribute(typeof(IfElseDesigner)));
            builder.AddCustomAttributes(type, type.GetProperty("Then"), BrowsableAttribute.No); 
            builder.AddCustomAttributes(type, type.GetProperty("Else"), BrowsableAttribute.No);
        } 
 
        void OnExpressionEditorLoaded(object sender, RoutedEventArgs e)
        { 
            ExpressionTextBox expressionTextBox = sender as ExpressionTextBox;
            Fx.Assert(expressionTextBox != null, "sender should be userControl");
            //bind ExpressionProperty of Expression textbox to ModelItem.Condition
            Binding b = new Binding(); 
            ArgumentToExpressionConverter argumentToExpressionConverter = new ArgumentToExpressionConverter();
            b.Converter = argumentToExpressionConverter; 
            b.Mode = BindingMode.TwoWay; 

            b.Source = this.ModelItem; 
            b.Path = new PropertyPath("Condition");
            if (BindingOperations.GetBinding(expressionTextBox, ExpressionTextBox.ExpressionProperty) != null)
            {
                BindingOperations.ClearBinding(expressionTextBox, ExpressionTextBox.ExpressionProperty); 
            }
            expressionTextBox.SetBinding(ExpressionTextBox.ExpressionProperty, b); 
            //bind OwnerActivityProperty of Expression textbox to ModelItem 
            Binding b1 = new Binding();
            b1.Source = this.ModelItem; 
            if (BindingOperations.GetBinding(expressionTextBox, ExpressionTextBox.OwnerActivityProperty) != null)
            {
                BindingOperations.ClearBinding(expressionTextBox, ExpressionTextBox.OwnerActivityProperty);
            } 
            expressionTextBox.SetBinding(ExpressionTextBox.OwnerActivityProperty, b1);
        } 
    } 
}

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