ActivityXRefConverter.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 / ServiceModel / Activities / Presentation / ActivityXRefConverter.cs / 1305376 / ActivityXRefConverter.cs

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

namespace System.ServiceModel.Activities.Presentation 
{
    using System; 
    using System.Globalization; 
    using System.Windows.Data;
    using System.Activities.Presentation.Model; 
    using System.Activities;
    using System.Activities.Core.Presentation;

    sealed class ActivityXRefConverter : IValueConverter 
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
        { 
            if (!(targetType == typeof(string) || targetType == typeof(object)))
            { 
                throw FxTrace.Exception.AsError(new NotSupportedException());
            }
            if (null == value)
            { 
                throw FxTrace.Exception.AsError(new ArgumentNullException("value"));
            } 
            ModelItem activity = value as ModelItem; 
            string displayName = value as string;
 
            string formatString = (parameter as string) ?? "{0}";

            if (null != activity && typeof(Activity).IsAssignableFrom(activity.ItemType))
            { 
                displayName = ((string)activity.Properties["DisplayName"].ComputedValue);
            } 
 
            if (null == displayName)
            { 
                displayName = "";
            }
            else if (displayName.Length == 0)
            { 
                displayName = "...";
            } 
 
            return string.Format(CultureInfo.CurrentUICulture, formatString, displayName);
        } 

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            throw FxTrace.Exception.AsError(new NotSupportedException()); 
        }
    } 
} 

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