当前位置: 首页>>代码示例>>C#>>正文


C# CultureInfo.MemberwiseClone方法代码示例

本文整理汇总了C#中System.Globalization.CultureInfo.MemberwiseClone方法的典型用法代码示例。如果您正苦于以下问题:C# CultureInfo.MemberwiseClone方法的具体用法?C# CultureInfo.MemberwiseClone怎么用?C# CultureInfo.MemberwiseClone使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Globalization.CultureInfo的用法示例。


在下文中一共展示了CultureInfo.MemberwiseClone方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ReadOnly

        public static CultureInfo ReadOnly(CultureInfo ci)
        {
            if (ci == null)
            {
                throw new ArgumentNullException("ci");
            }
            Contract.Ensures(Contract.Result<CultureInfo>() != null);
            Contract.EndContractBlock();

            if (ci.IsReadOnly)
            {
                return (ci);
            }
            CultureInfo newInfo = (CultureInfo)(ci.MemberwiseClone());

            if (!ci.IsNeutralCulture)
            {
                //If this is exactly our type, we can make certain optimizations so that we don't allocate NumberFormatInfo or DTFI unless
                //they've already been allocated.  If this is a derived type, we'll take a more generic codepath.
                if (!ci.m_isInherited)
                {
                    if (ci.dateTimeInfo != null)
                    {
                        newInfo.dateTimeInfo = DateTimeFormatInfo.ReadOnly(ci.dateTimeInfo);
                    }
                    if (ci.numInfo != null)
                    {
                        newInfo.numInfo = NumberFormatInfo.ReadOnly(ci.numInfo);
                    }
                }
                else
                {
                    newInfo.DateTimeFormat = DateTimeFormatInfo.ReadOnly(ci.DateTimeFormat);
                    newInfo.NumberFormat = NumberFormatInfo.ReadOnly(ci.NumberFormat);
                }
            }

            if (ci.textInfo != null)
            {
                newInfo.textInfo = TextInfo.ReadOnly(ci.textInfo);
            }

            if (ci.calendar != null)
            {
                newInfo.calendar = Calendar.ReadOnly(ci.calendar);
            }

            // Don't set the read-only flag too early.
            // We should set the read-only flag here.  Otherwise, info.DateTimeFormat will not be able to set.
            newInfo.m_isReadOnly = true;

            return (newInfo);
        }
开发者ID:dagood,项目名称:coreclr,代码行数:53,代码来源:CultureInfo.cs

示例2: ReadOnly

 public static CultureInfo ReadOnly(CultureInfo ci)
 {
     if (ci == null)
     {
         throw new ArgumentNullException("ci");
     }
     if (ci.IsReadOnly)
     {
         return ci;
     }
     CultureInfo info = (CultureInfo) ci.MemberwiseClone();
     if (!ci.IsNeutralCulture)
     {
         if (!ci.m_isInherited)
         {
             if (ci.dateTimeInfo != null)
             {
                 info.dateTimeInfo = DateTimeFormatInfo.ReadOnly(ci.dateTimeInfo);
             }
             if (ci.numInfo != null)
             {
                 info.numInfo = NumberFormatInfo.ReadOnly(ci.numInfo);
             }
         }
         else
         {
             info.DateTimeFormat = DateTimeFormatInfo.ReadOnly(ci.DateTimeFormat);
             info.NumberFormat = NumberFormatInfo.ReadOnly(ci.NumberFormat);
         }
     }
     if (ci.textInfo != null)
     {
         info.textInfo = System.Globalization.TextInfo.ReadOnly(ci.textInfo);
     }
     if (ci.calendar != null)
     {
         info.calendar = System.Globalization.Calendar.ReadOnly(ci.calendar);
     }
     info.m_isReadOnly = true;
     return info;
 }
开发者ID:randomize,项目名称:VimConfig,代码行数:41,代码来源:CultureInfo.cs

示例3: ReadOnly

        /// <include file='doc\CultureInfo.uex' path='docs/doc[@for="CultureInfo.ReadOnly"]/*' />        
        public static CultureInfo ReadOnly(CultureInfo ci) {
            if (ci == null) {
                throw new ArgumentNullException("ci");
            }
            if (ci.IsReadOnly) {
                return (ci);
            }
            CultureInfo info = (CultureInfo)(ci.MemberwiseClone());

            //If this is exactly our type, we can make certain optimizations so that we don't allocate NumberFormatInfo or DTFI unless
            //they've already been allocated.  If this is a derived type, we'll take a more generic codepath.
            if (ci.GetType()==typeof(CultureInfo)) {
                if (ci.dateTimeInfo != null) {
                    info.dateTimeInfo = DateTimeFormatInfo.ReadOnly(ci.dateTimeInfo);
                }
                if (ci.numInfo != null) {
                    info.numInfo = NumberFormatInfo.ReadOnly(ci.numInfo);
                }
            } else {
                info.DateTimeFormat = DateTimeFormatInfo.ReadOnly(ci.DateTimeFormat);
                info.NumberFormat = NumberFormatInfo.ReadOnly(ci.NumberFormat);
            }
            // Don't set the read-only flag too early.
            // We should set the read-only flag here.  Otherwise, info.DateTimeFormat will not be able to set.
            info.m_isReadOnly = true;
            
            return (info);
        }
开发者ID:ArildF,项目名称:masters,代码行数:29,代码来源:cultureinfo.cs

示例4: ReadOnly

	// Wrap a culture information object to make it read-only.
	public static CultureInfo ReadOnly(CultureInfo ci)
			{
				if(ci == null)
				{
					throw new ArgumentNullException("ci");
				}
				if(ci.IsReadOnly)
				{
					return ci;
				}
				else
				{
					CultureInfo culture = (CultureInfo)(ci.MemberwiseClone());
					culture.readOnly = true;
					return culture;
				}
			}
开发者ID:jjenki11,项目名称:blaze-chem-rendering,代码行数:18,代码来源:CultureInfo.cs


注:本文中的System.Globalization.CultureInfo.MemberwiseClone方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。