XmlnsPrefixAttribute.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Base / System / Windows / Markup / XmlnsPrefixAttribute.cs / 1 / XmlnsPrefixAttribute.cs

                            //------------------------------------------------------------------------ 
//
//  Microsoft Windows Client Platform
//  Copyright (C) Microsoft Corporation, 2005
// 
//  File:     XmlnsPrefixAttribute.cs
// 
//  Contents: Namespace default prefix recommendation support 

//  Created:   04/28/2005 [....] 
//
//-----------------------------------------------------------------------

using System; 
using System.ComponentModel;
 
namespace System.Windows.Markup 
{
    ///  
    ///
    /// This attribute allows an assembly to recommend a prefix to be used when writing elements and
    /// attributes in a xaml file.
    /// 
    /// For a WinFX assembly, it can set the attributes as follows:
    /// 
    ///  
    /// [assembly:XmlnsDefinition("http://schemas.fabrikam.com/mynamespace", "fabrikam.myproduct.mycategory1")]
    /// [assembly:XmlnsDefinition("http://schemas.fabrikam.com/mynamespace", "fabrikam.myproduct.mycategory2")] 
    /// [assembly:XmlnsPrefix("http://schemas.fabrikam.com/mynamespace", "myns")]
    /// 
    ///
    /// If fabrikam.myproduct.mycategory namespace in this assembly contains a UIElement such as "MyButton", the 
    /// xaml file could use it like below:
    ///    
    ///   <Page xmlns:myns="http://schemas.fabrikam.com/mynamespace" .... > 
    ///      <myns:MyButton> ..... </myns:MyButton>
    ///   </Page> 
    ///   
    /// 
    [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
    public sealed class XmlnsPrefixAttribute: Attribute 
    {
        ///  
        /// Constructor 
        /// 
        /// XML namespce 
        /// recommended prefix
        public XmlnsPrefixAttribute(string xmlNamespace, string prefix)
        {
            // Validate Input Arguments 
            if (xmlNamespace == null)
            { 
                throw new ArgumentNullException("xmlNamespace"); 
            }
 
            if (prefix == null)
            {
                throw new ArgumentNullException("prefix");
            } 

            _xmlNamespace = xmlNamespace; 
            _prefix= prefix; 
        }
 
        #region public properties

        /// 
        /// XML Namespace 
        /// 
        public string XmlNamespace 
        { 
            get { return _xmlNamespace; }
        } 

        /// 
        /// New Xml Namespace
        ///  
        public string Prefix
        { 
            get { return _prefix; } 
        }
 
        #endregion public properties


        #region Private Fields 

        private string _xmlNamespace; 
        private string _prefix; 

        #endregion Private Fields 

   }
}
 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------ 
//
//  Microsoft Windows Client Platform
//  Copyright (C) Microsoft Corporation, 2005
// 
//  File:     XmlnsPrefixAttribute.cs
// 
//  Contents: Namespace default prefix recommendation support 

//  Created:   04/28/2005 [....] 
//
//-----------------------------------------------------------------------

using System; 
using System.ComponentModel;
 
namespace System.Windows.Markup 
{
    ///  
    ///
    /// This attribute allows an assembly to recommend a prefix to be used when writing elements and
    /// attributes in a xaml file.
    /// 
    /// For a WinFX assembly, it can set the attributes as follows:
    /// 
    ///  
    /// [assembly:XmlnsDefinition("http://schemas.fabrikam.com/mynamespace", "fabrikam.myproduct.mycategory1")]
    /// [assembly:XmlnsDefinition("http://schemas.fabrikam.com/mynamespace", "fabrikam.myproduct.mycategory2")] 
    /// [assembly:XmlnsPrefix("http://schemas.fabrikam.com/mynamespace", "myns")]
    /// 
    ///
    /// If fabrikam.myproduct.mycategory namespace in this assembly contains a UIElement such as "MyButton", the 
    /// xaml file could use it like below:
    ///    
    ///   <Page xmlns:myns="http://schemas.fabrikam.com/mynamespace" .... > 
    ///      <myns:MyButton> ..... </myns:MyButton>
    ///   </Page> 
    ///   
    /// 
    [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
    public sealed class XmlnsPrefixAttribute: Attribute 
    {
        ///  
        /// Constructor 
        /// 
        /// XML namespce 
        /// recommended prefix
        public XmlnsPrefixAttribute(string xmlNamespace, string prefix)
        {
            // Validate Input Arguments 
            if (xmlNamespace == null)
            { 
                throw new ArgumentNullException("xmlNamespace"); 
            }
 
            if (prefix == null)
            {
                throw new ArgumentNullException("prefix");
            } 

            _xmlNamespace = xmlNamespace; 
            _prefix= prefix; 
        }
 
        #region public properties

        /// 
        /// XML Namespace 
        /// 
        public string XmlNamespace 
        { 
            get { return _xmlNamespace; }
        } 

        /// 
        /// New Xml Namespace
        ///  
        public string Prefix
        { 
            get { return _prefix; } 
        }
 
        #endregion public properties


        #region Private Fields 

        private string _xmlNamespace; 
        private string _prefix; 

        #endregion Private Fields 

   }
}
 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.

                        

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