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


C# Options.SetFlag方法代码示例

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


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

示例1: Create


//.........这里部分代码省略.........
                    {
                        if (!throwOnError) return null;
                        throw new XslTransformException(SR.Coll_BadOptFormat, option);
                    }

                    string optionName = pair[0].ToUpper();
                    string optionValue = pair[1].ToUpper();

                    if (optionName == "SORT")
                    {
                        sort = optionValue;
                    }
                    else
                    {
                        int flag;

                        switch (optionName)
                        {
                            case "IGNORECASE": flag = (int)CompareOptions.IgnoreCase; break;
                            case "IGNORENONSPACE": flag = (int)CompareOptions.IgnoreNonSpace; break;
                            case "IGNORESYMBOLS": flag = (int)CompareOptions.IgnoreSymbols; break;
                            case "IGNOREKANATYPE": flag = (int)CompareOptions.IgnoreKanaType; break;
                            case "IGNOREWIDTH": flag = (int)CompareOptions.IgnoreWidth; break;
                            case "UPPERFIRST": flag = Options.FlagUpperFirst; break;
                            case "EMPTYGREATEST": flag = Options.FlagEmptyGreatest; break;
                            case "DESCENDINGORDER": flag = Options.FlagDescendingOrder; break;
                            default:
                                if (!throwOnError) return null;
                                throw new XslTransformException(SR.Coll_UnsupportedOpt, pair[0]);
                        }

                        switch (optionValue)
                        {
                            case "0": case "FALSE": options.SetFlag(flag, false); break;
                            case "1": case "TRUE": options.SetFlag(flag, true); break;
                            default:
                                if (!throwOnError) return null;
                                throw new XslTransformException(SR.Coll_UnsupportedOptVal, pair[0], pair[1]);
                        }
                    }
                }
            }

            // upperfirst option is only meaningful when not ignore case
            if (options.UpperFirst && options.IgnoreCase)
                options.UpperFirst = false;

            // other CompareOptions are only meaningful if Ordinal comparison is not being used
            if (options.Ordinal)
            {
                options.CompareOptions = CompareOptions.Ordinal;
                options.UpperFirst = false;
            }

            // new cultureinfo based on alternate sorting option
            if (sort != null && cultInfo != null)
            {
                string cultName = cultInfo.Name;
                switch (sort)
                {
                    case "bopo":
                        if (cultName == zhTW)
                        {
                            cultInfo = new CultureInfo(zhTWbopo);
                        }
                        break;
开发者ID:geoffkizer,项目名称:corefx,代码行数:67,代码来源:XmlCollation.cs


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