本文整理汇总了C#中System.ComponentModel.EnumConverter类的典型用法代码示例。如果您正苦于以下问题:C# EnumConverter类的具体用法?C# EnumConverter怎么用?C# EnumConverter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
EnumConverter类属于System.ComponentModel命名空间,在下文中一共展示了EnumConverter类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: CanConvertTo
public void CanConvertTo ()
{
EnumConverter converter = new EnumConverter (typeof (E));
Assert.IsTrue (converter.CanConvertTo (typeof (string)), "#A1");
Assert.IsFalse (converter.CanConvertTo (typeof (Enum)), "#A2");
Assert.IsFalse (converter.CanConvertTo (typeof (object)), "#A3");
Assert.IsFalse (converter.CanConvertTo (typeof (int)), "#A4");
Assert.IsTrue (converter.CanConvertTo (typeof (InstanceDescriptor)), "#A5");
Assert.IsFalse (converter.CanConvertTo (typeof (string [])), "#A6");
#if NET_2_0
Assert.IsTrue (converter.CanConvertTo (typeof (Enum [])), "#A7");
#else
Assert.IsFalse (converter.CanConvertTo (typeof (Enum [])), "#A7");
#endif
converter = new EnumConverter (typeof (E2));
Assert.IsTrue (converter.CanConvertTo (typeof (string)), "#B1");
Assert.IsFalse (converter.CanConvertTo (typeof (Enum)), "#B2");
Assert.IsFalse (converter.CanConvertTo (typeof (object)), "#B3");
Assert.IsFalse (converter.CanConvertTo (typeof (object)), "#B4");
Assert.IsTrue (converter.CanConvertTo (typeof (InstanceDescriptor)), "#B5");
Assert.IsFalse (converter.CanConvertTo (typeof (string [])), "#B6");
#if NET_2_0
Assert.IsTrue (converter.CanConvertTo (typeof (Enum [])), "#B7");
#else
Assert.IsFalse (converter.CanConvertTo (typeof (Enum [])), "#B7");
#endif
}
开发者ID:nlhepler,项目名称:mono,代码行数:28,代码来源:EnumConverterTests.cs
示例2: GetSerializeAs
internal static SettingsSerializeAs GetSerializeAs(string serializeAs)
{
var converter = new EnumConverter(typeof(SettingsSerializeAs));
if (!String.IsNullOrEmpty(serializeAs))
return (SettingsSerializeAs)converter.ConvertFromInvariantString(serializeAs);
return default(SettingsSerializeAs);
}
开发者ID:nhannd,项目名称:Xian,代码行数:8,代码来源:SystemConfigurationHelper.cs
示例3: GetTypeConverter
private static TypeConverter GetTypeConverter(Type from, Type converter)
{
TypeConverter typeConverter;
if (converter == typeof(EnumConverter))
typeConverter = new EnumConverter(from);
else
typeConverter = (TypeConverter)Activator.CreateInstance(converter);
return typeConverter;
}
开发者ID:ericziko,项目名称:navigation,代码行数:9,代码来源:ConverterFactory.cs
示例4: SettingsMapping
public SettingsMapping (XPathNavigator nav)
{
_sectionTypeName = nav.GetAttribute ("sectionType", String.Empty);
_mapperTypeName = nav.GetAttribute ("mapperType", String.Empty);
EnumConverter cvt = new EnumConverter (typeof (SettingsMappingPlatform));
_platform = (SettingsMappingPlatform) cvt.ConvertFromInvariantString (nav.GetAttribute ("platform", String.Empty));
LoadContents (nav);
}
开发者ID:Profit0004,项目名称:mono,代码行数:10,代码来源:SettingsMapping.cs
示例5: Convert
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var valueType = value.GetType();
var originalValue = (Enum) value;
var converter = new EnumConverter(valueType);
var flag = (Enum) converter.ConvertFrom(parameter);
Debug.Assert(flag != null, "flag != null");
return originalValue.HasFlag(flag);
}
开发者ID:SuperJMN,项目名称:Glass,代码行数:12,代码来源:FlaggedEnumConverter.cs
示例6: JsonFxAOT
private JsonFxAOT()
{
System.ComponentModel.TypeConverter c;
c = new ArrayConverter();
m_fakeFlag = c.Equals(c);
//c = new BaseNumberConverter();
//m_fakeFlag = c.Equals(c);
c = new BooleanConverter();
m_fakeFlag = c.Equals(c);
c = new ByteConverter();
m_fakeFlag = c.Equals(c);
c = new CollectionConverter();
m_fakeFlag = c.Equals(c);
c = new ComponentConverter(typeof(int));
m_fakeFlag = c.Equals(c);
c = new CultureInfoConverter();
m_fakeFlag = c.Equals(c);
c = new DateTimeConverter();
m_fakeFlag = c.Equals(c);
c = new DecimalConverter();
m_fakeFlag = c.Equals(c);
c = new DoubleConverter();
m_fakeFlag = c.Equals(c);
c = new EnumConverter(typeof(int));
m_fakeFlag = c.Equals(c);
c = new ExpandableObjectConverter();
m_fakeFlag = c.Equals(c);
c = new Int16Converter();
m_fakeFlag = c.Equals(c);
c = new Int32Converter();
m_fakeFlag = c.Equals(c);
c = new Int64Converter();
m_fakeFlag = c.Equals(c);
c = new NullableConverter(typeof(object));
m_fakeFlag = c.Equals(c);
c = new SByteConverter();
m_fakeFlag = c.Equals(c);
c = new SingleConverter();
m_fakeFlag = c.Equals(c);
c = new StringConverter();
m_fakeFlag = c.Equals(c);
c = new TimeSpanConverter();
m_fakeFlag = c.Equals(c);
c = new UInt16Converter();
m_fakeFlag = c.Equals(c);
c = new UInt32Converter();
m_fakeFlag = c.Equals(c);
c = new UInt64Converter();
m_fakeFlag = c.Equals(c);
}
开发者ID:RosimInc,项目名称:OJam2015,代码行数:51,代码来源:JsonFxAOT.cs
示例7: EnumeratedTypeChooser
public EnumeratedTypeChooser(Type enumType)
{
if (enumType.IsEnumType() == false)
throw new ArgumentException("The parameter enumType must be an Enum type. Nullable Enum types are also accepted. Other types are not allowed.");
ec = new EnumConverter(enumType);
InitializeComponent();
foreach (var val in Enum.GetValues(enumType))
{
cmbValue.Items.Add(val);
}
}
开发者ID:rraguso,项目名称:protone-suite,代码行数:14,代码来源:EnumeratedTypeChooser.cs
示例8: ConvertFrom_Null
public void ConvertFrom_Null ()
{
EnumConverter converter = new EnumConverter (typeof (E));
try {
converter.ConvertFrom (null, CultureInfo.InvariantCulture, null);
Assert.Fail ("#1");
} catch (NotSupportedException ex) {
// EnumConverter cannot convert from (null)
Assert.AreEqual (typeof (NotSupportedException), ex.GetType (), "#2");
Assert.IsNull (ex.InnerException, "#3");
Assert.IsNotNull (ex.Message, "#4");
Assert.IsTrue (ex.Message.IndexOf (typeof (EnumConverter).Name) != -1, "#5");
Assert.IsTrue (ex.Message.IndexOf ("(null)") != -1, "#6");
}
}
开发者ID:nlhepler,项目名称:mono,代码行数:15,代码来源:EnumConverterTests.cs
示例9: Serialize
public override object Serialize(IDesignerSerializationManager manager, object value)
{
CodeExpression left = null;
using (CodeDomSerializerBase.TraceScope("EnumCodeDomSerializer::Serialize"))
{
Enum[] enumArray;
if (!(value is Enum))
{
return left;
}
bool flag = false;
TypeConverter converter = TypeDescriptor.GetConverter(value);
if ((converter != null) && converter.CanConvertTo(typeof(Enum[])))
{
enumArray = (Enum[]) converter.ConvertTo(value, typeof(Enum[]));
flag = enumArray.Length > 1;
}
else
{
enumArray = new Enum[] { (Enum) value };
flag = true;
}
CodeTypeReferenceExpression targetObject = new CodeTypeReferenceExpression(value.GetType());
TypeConverter converter2 = new EnumConverter(value.GetType());
foreach (Enum enum2 in enumArray)
{
string str = (converter2 != null) ? converter2.ConvertToString(enum2) : null;
CodeExpression right = !string.IsNullOrEmpty(str) ? new CodeFieldReferenceExpression(targetObject, str) : null;
if (right != null)
{
if (left == null)
{
left = right;
}
else
{
left = new CodeBinaryOperatorExpression(left, CodeBinaryOperatorType.BitwiseOr, right);
}
}
}
if ((left != null) && flag)
{
left = new CodeCastExpression(value.GetType(), left);
}
}
return left;
}
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:47,代码来源:EnumCodeDomSerializer.cs
示例10: ConvertFrom
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
char[] separator = new char[] { '\n' };
string[] strArray = ((string) value).Split(separator);
Keyframe[] keys = new Keyframe[strArray.Length - 2];
for (int i = 0; i < keys.Length; i++)
{
char[] chArray2 = new char[] { ',' };
string[] keyvals = strArray[i + 2].Split(chArray2);
keys[i] = new Keyframe(ParseKeyVal(keyvals, Val.Time), ParseKeyVal(keyvals, Val.Value), ParseKeyVal(keyvals, Val.InTangent), ParseKeyVal(keyvals, Val.OutTangent));
}
AnimationCurve curve = new AnimationCurve(keys);
EnumConverter converter = new EnumConverter(typeof(WrapMode));
curve.postWrapMode = (WrapMode) converter.ConvertFromString(strArray[0]);
curve.preWrapMode = (WrapMode) converter.ConvertFromString(strArray[1]);
return curve;
}
开发者ID:CarlosHBC,项目名称:UnityDecompiled,代码行数:17,代码来源:AnimationCurveTypeConverter.cs
示例11: AnimationCurveToString
private static string AnimationCurveToString(object value)
{
if (value == null)
{
return string.Empty;
}
AnimationCurve curve = (AnimationCurve) value;
StringBuilder builder = new StringBuilder();
EnumConverter converter = new EnumConverter(typeof(WrapMode));
builder.AppendFormat("{0}\n{1}", converter.ConvertToString(curve.postWrapMode), converter.ConvertToString(curve.preWrapMode));
foreach (Keyframe keyframe in curve.keys)
{
object[] args = new object[] { InvStr(keyframe.inTangent), InvStr(keyframe.outTangent), InvStr(keyframe.time), InvStr(keyframe.value) };
builder.AppendFormat("\n{0}, {1}, {2}, {3}", args);
}
return builder.ToString();
}
开发者ID:CarlosHBC,项目名称:UnityDecompiled,代码行数:17,代码来源:AnimationCurveTypeConverter.cs
示例12: ConvertBack
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
var booleanValue = (bool) value;
var converter = new EnumConverter(targetType);
var flag = (Enum)converter.ConvertFrom(parameter);
if (booleanValue) {
dynamic result = OriginalValue;
result |= flag;
return result;
}
else {
dynamic result = OriginalValue;
dynamic dynFlag = flag;
result &= ~dynFlag;
return result;
}
}
开发者ID:SuperJMN,项目名称:Glass,代码行数:19,代码来源:FlaggedEnumConverter.cs
示例13: GetConverter
/// <summary>
/// Returns <see cref="TypeConverter"/> for the specified type.
/// </summary>
/// <param name="type">Type to get the converter for.</param>
/// <returns>a type converter for the specified type.</returns>
/// <exception cref="ArgumentNullException">If <paramref name="type"/> is <c>null</c>.</exception>
public static TypeConverter GetConverter(Type type)
{
AssertUtils.ArgumentNotNull(type, "type");
TypeConverter converter;
if (!_converters.TryGetValue(type, out converter))
{
if (type.IsEnum)
{
converter = new EnumConverter(type);
}
else
{
converter = TypeDescriptor.GetConverter(type);
}
}
return converter;
}
开发者ID:kog,项目名称:Solenoid-Expressions,代码行数:25,代码来源:TypeConverterRegistry.cs
示例14: Main
static void Main(string[] args)
{
Console.WriteLine("使用 EnumConverter ");
{
EnumConverter converter = new EnumConverter(typeof(ProgrammingLanguage));
// 将字符串转换为枚举.
string langStr = "CS, Cpp, XAML";
Console.WriteLine("将字符串 \"{0}\" 转换为枚举...", langStr);
ProgrammingLanguage lang = (ProgrammingLanguage)converter.ConvertFromString(langStr);
Console.WriteLine("完成!");
// 将枚举转换为字符串.
Console.WriteLine("将枚举结果转换为字符串...");
langStr = converter.ConvertToString(lang);
Console.WriteLine("完成! \"{0}\"", langStr);
}
Console.WriteLine("\n使用 EnumDescriptionConverter ");
{
EnumDescriptionConverter converter = new EnumDescriptionConverter(
typeof(ProgrammingLanguage));
// 将枚举转换为字符串.
string langStr = "Visual C#, Visual C++, XAML";
Console.WriteLine("将字符串 \"{0}\" 转换为枚举...", langStr);
ProgrammingLanguage lang = (ProgrammingLanguage)converter.ConvertFromString(langStr);
Console.WriteLine("完成!");
// 将枚举转换为字符串.
Console.WriteLine("将枚举结果转换为字符串...");
langStr = converter.ConvertToString(lang);
Console.WriteLine("完成! \"{0}\"", langStr);
}
Console.ReadLine();
}
开发者ID:zealoussnow,项目名称:OneCode,代码行数:37,代码来源:Program.cs
示例15: DeserializeBoxSettings
private void DeserializeBoxSettings(AnnotationBox boxSettings, XmlElement boxSettingsNode)
{
string font = boxSettingsNode.GetAttribute("font");
string color = boxSettingsNode.GetAttribute("color");
string italics = boxSettingsNode.GetAttribute("italics");
string bold = boxSettingsNode.GetAttribute("bold");
string numberOfLines = boxSettingsNode.GetAttribute("number-of-lines");
string truncation = boxSettingsNode.GetAttribute("truncation");
string justification = boxSettingsNode.GetAttribute("justification");
string verticalAlignment = boxSettingsNode.GetAttribute("vertical-alignment");
string fitWidth = boxSettingsNode.GetAttribute("fit-width");
string alwaysVisible = boxSettingsNode.GetAttribute("always-visible");
if (!String.IsNullOrEmpty(font))
boxSettings.Font = font;
if (!String.IsNullOrEmpty(color))
boxSettings.Color = color;
if (!String.IsNullOrEmpty(italics))
boxSettings.Italics = (String.Compare("true", italics, true) == 0);
if (!String.IsNullOrEmpty(bold))
boxSettings.Bold = (String.Compare("true", bold, true) == 0);
if (!String.IsNullOrEmpty(numberOfLines))
{
byte result;
if (!byte.TryParse(numberOfLines, System.Globalization.NumberStyles.Integer, System.Globalization.CultureInfo.InvariantCulture, out result))
result = 1;
boxSettings.NumberOfLines = result;
}
if (!String.IsNullOrEmpty(fitWidth))
boxSettings.FitWidth = (String.Compare("true", fitWidth) == 0);
if (!String.IsNullOrEmpty(alwaysVisible))
boxSettings.AlwaysVisible = (String.Compare("true", alwaysVisible, true) == 0);
if (!String.IsNullOrEmpty(truncation))
{
AnnotationBox.TruncationBehaviour fromString = boxSettings.Truncation;
EnumConverter converter = new EnumConverter(typeof(AnnotationBox.TruncationBehaviour));
if (converter.IsValid(truncation))
boxSettings.Truncation = (AnnotationBox.TruncationBehaviour)converter.ConvertFromString(truncation);
}
if (!String.IsNullOrEmpty(justification))
{
AnnotationBox.JustificationBehaviour fromString = boxSettings.Justification;
EnumConverter converter = new EnumConverter(typeof(AnnotationBox.JustificationBehaviour));
if (converter.IsValid(justification))
boxSettings.Justification = (AnnotationBox.JustificationBehaviour)converter.ConvertFromString(justification);
}
if (!String.IsNullOrEmpty(verticalAlignment))
{
AnnotationBox.VerticalAlignmentBehaviour fromString = boxSettings.VerticalAlignment;
EnumConverter converter = new EnumConverter(typeof(AnnotationBox.VerticalAlignmentBehaviour));
if (converter.IsValid(verticalAlignment))
boxSettings.VerticalAlignment = (AnnotationBox.VerticalAlignmentBehaviour)converter.ConvertFromString(verticalAlignment);
}
XmlElement configurationSettings = (XmlElement)boxSettingsNode.SelectSingleNode("configuration-settings");
if (configurationSettings != null)
{
string showLabel = configurationSettings.GetAttribute("show-label");
string showLabelIfEmpty = configurationSettings.GetAttribute("show-label-if-empty");
if (!String.IsNullOrEmpty(showLabel))
boxSettings.ConfigurationOptions.ShowLabel = (String.Compare("true", showLabel, true) == 0);
if (!String.IsNullOrEmpty(showLabelIfEmpty))
boxSettings.ConfigurationOptions.ShowLabelIfValueEmpty = (String.Compare("true", showLabelIfEmpty, true) == 0);
}
}
开发者ID:nhannd,项目名称:Xian,代码行数:71,代码来源:AnnotationLayoutStore.cs
示例16: LoadDockWindows
private static DockWindowStruct[] LoadDockWindows(XmlTextReader xmlIn, DockPanel dockPanel)
{
EnumConverter dockStateConverter = new EnumConverter(typeof(DockState));
EnumConverter dockAlignmentConverter = new EnumConverter(typeof(DockAlignment));
int countOfDockWindows = dockPanel.DockWindows.Count;
DockWindowStruct[] dockWindows = new DockWindowStruct[countOfDockWindows];
MoveToNextElement(xmlIn);
for (int i = 0; i < countOfDockWindows; i++)
{
int id = Convert.ToInt32(xmlIn.GetAttribute("ID"), CultureInfo.InvariantCulture);
if (xmlIn.Name != "DockWindow" || id != i)
throw new ArgumentException(DockPanelSuite.Properties.Resources.DockPanel_LoadFromXml_InvalidXmlFormat);
dockWindows[i].DockState = (DockState)dockStateConverter.ConvertFrom(xmlIn.GetAttribute("DockState"));
dockWindows[i].ZOrderIndex = Convert.ToInt32(xmlIn.GetAttribute("ZOrderIndex"), CultureInfo.InvariantCulture);
MoveToNextElement(xmlIn);
if (xmlIn.Name != "DockList" && xmlIn.Name != "NestedPanes")
throw new ArgumentException(DockPanelSuite.Properties.Resources.DockPanel_LoadFromXml_InvalidXmlFormat);
int countOfNestedPanes = Convert.ToInt32(xmlIn.GetAttribute("Count"), CultureInfo.InvariantCulture);
dockWindows[i].NestedPanes = new NestedPane[countOfNestedPanes];
MoveToNextElement(xmlIn);
for (int j = 0; j < countOfNestedPanes; j++)
{
int id2 = Convert.ToInt32(xmlIn.GetAttribute("ID"), CultureInfo.InvariantCulture);
if (xmlIn.Name != "Pane" || id2 != j)
throw new ArgumentException(DockPanelSuite.Properties.Resources.DockPanel_LoadFromXml_InvalidXmlFormat);
dockWindows[i].NestedPanes[j].IndexPane = Convert.ToInt32(xmlIn.GetAttribute("RefID"), CultureInfo.InvariantCulture);
dockWindows[i].NestedPanes[j].IndexPrevPane = Convert.ToInt32(xmlIn.GetAttribute("PrevPane"), CultureInfo.InvariantCulture);
dockWindows[i].NestedPanes[j].Alignment = (DockAlignment)dockAlignmentConverter.ConvertFrom(xmlIn.GetAttribute("Alignment"));
dockWindows[i].NestedPanes[j].Proportion = Convert.ToDouble(xmlIn.GetAttribute("Proportion"), CultureInfo.InvariantCulture);
MoveToNextElement(xmlIn);
}
}
return dockWindows;
}
开发者ID:rudybear,项目名称:moai-ide,代码行数:36,代码来源:DockPanel.Persistor.cs
示例17: LoadWindowState
/// <summary>
/// Parse WindowState.
/// </summary>
/// <param name="xmlIn"></param>
/// <returns></returns>
private static WindowStateStruct LoadWindowState(XmlTextReader xmlIn)
{
while (!xmlIn.Name.Equals("Form"))
{
if (!MoveToNextElement(xmlIn))
throw new ArgumentException();
}
EnumConverter windowStateConverter = new EnumConverter(typeof(FormWindowState));
WindowStateStruct windowState = new WindowStateStruct();
windowState.WindowState = (FormWindowState)windowStateConverter.ConvertFrom(xmlIn.GetAttribute("WindowState"));
windowState.Left = Convert.ToInt32(xmlIn.GetAttribute("Left"), CultureInfo.InvariantCulture);
windowState.Top = Convert.ToInt32(xmlIn.GetAttribute("Top"), CultureInfo.InvariantCulture);
windowState.Height = Convert.ToInt32(xmlIn.GetAttribute("Height"), CultureInfo.InvariantCulture);
windowState.Width = Convert.ToInt32(xmlIn.GetAttribute("Width"), CultureInfo.InvariantCulture);
windowState.Screen = Convert.ToInt32(xmlIn.GetAttribute("Screen"), CultureInfo.InvariantCulture);
return windowState;
}
开发者ID:ecell,项目名称:ecell3-ide,代码行数:22,代码来源:DockWindowSerializer.cs
示例18: GetKnownConverterFromType_NoCache
// Returns the known TypeConverter for a given object type. If there is no known
// converter, return null. This is a static version of the previous
// method for use when there is no parser context available.
internal static TypeConverter GetKnownConverterFromType_NoCache(Type type)
{
KnownElements typeId = GetKnownTypeConverterIdFromType(type);
TypeConverter tc;
// The EnumConverter and NullableConverter need to be created specially, since
// they need the type of the Enum or Nullable in their constructor.
switch (typeId)
{
case KnownElements.EnumConverter:
Debug.Assert(type.IsEnum);
tc = new System.ComponentModel.EnumConverter(type);
break;
case KnownElements.NullableConverter:
Debug.Assert(ReflectionHelper.IsNullableType(type));
tc = new System.ComponentModel.NullableConverter(type);
break;
case KnownElements.UnknownElement:
tc = null;
break;
default:
tc = KnownTypes.CreateKnownElement(typeId) as TypeConverter;
break;
}
return tc;
}
开发者ID:sjyanxin,项目名称:WPFSource,代码行数:33,代码来源:BamlMapTable.cs
示例19: GetConverterFromId
// Return an instance of a TypeConverter object, given the type id of the object.
// This may be a known element, or one that is stored in a type record
internal TypeConverter GetConverterFromId (
short typeId,
Type propType,
ParserContext pc)
{
TypeConverter tc = null;
if (typeId < 0)
{
// The EnumConverter and NullableConverter need to be created specially, since
// they need the type of the Enum or Nullable in their constructor.
switch((KnownElements)(-typeId))
{
case KnownElements.EnumConverter:
Debug.Assert(propType.IsEnum);
tc = GetConverterFromCache(propType);
if (tc == null)
{
tc = new System.ComponentModel.EnumConverter(propType);
ConverterCache.Add(propType, tc);
}
break;
case KnownElements.NullableConverter:
Debug.Assert(ReflectionHelper.IsNullableType(propType));
tc = GetConverterFromCache(propType);
if (tc == null)
{
tc = new System.ComponentModel.NullableConverter(propType);
ConverterCache.Add(propType, tc);
}
break;
default:
tc = GetConverterFromCache(typeId);
if (tc == null)
{
tc = CreateKnownTypeFromId(typeId) as TypeConverter;
ConverterCache.Add(typeId, tc);
}
break;
}
}
else
{
Type t = GetTypeFromId(typeId);
tc = GetConverterFromCache(t);
if (tc == null)
{
if (ReflectionHelper.IsPublicType(t))
{
tc = Activator.CreateInstance(t) as TypeConverter;
}
else
{
tc = XamlTypeMapper.CreateInternalInstance(pc, t) as TypeConverter;
}
if (tc == null)
{
ThrowException(SRID.ParserNoTypeConv, propType.Name);
}
else
{
ConverterCache.Add(t, tc);
}
}
}
return tc;
}
开发者ID:sjyanxin,项目名称:WPFSource,代码行数:77,代码来源:BamlMapTable.cs
示例20: Load
public static ThumbnailSettings Load(XmlDocument document)
{
Size size;
InterpolationMode interpolationMode;
Color backColor;
ThreadPriority threadPriority;
SizeConverter sizeConv = new SizeConverter();
XmlElement sizeElem = document.SelectSingleNode("settings/thumbnail/size") as XmlElement;
if (sizeElem != null) {
try {
size = (Size)sizeConv.ConvertFromString(sizeElem.GetAttribute("value"));
}
catch {
size = DefaultSize;
}
}
else {
size = DefaultSize;
}
EnumConverter ipConv = new EnumConverter(typeof(InterpolationMode));
XmlElement ipmodeElem = document.SelectSingleNode("settings/thumbnail/interpolationMode") as XmlElement;
if (ipmodeElem != null) {
try {
interpolationMode = (InterpolationMode)ipConv.ConvertFromString(ipmodeElem.GetAttribute("value"));
}
catch {
interpolationMode = DefaultInterpolationMode;
}
}
else {
interpolationMode = DefaultInterpolationMode;
}
ColorConverter colorConv = new ColorConverter();
XmlElement bcolorElem = document.SelectSingleNode("settings/thumbnail/backColor") as XmlElement;
if (bcolorElem != null) {
try {
backColor = (Color)colorConv.ConvertFromString(bcolorElem.GetAttribute("value"));
}
catch {
backColor = DefaultBackColor;
}
}
else {
backColor = DefaultBackColor;
}
EnumConverter priorityConv = new EnumConverter(typeof(ThreadPriority));
XmlElement priorityElem = document.SelectSingleNode("settings/thumbnail/threadPriority") as XmlElement;
if (priorityElem != null) {
try {
threadPriority = (ThreadPriority)priorityConv.ConvertFromString(priorityElem.GetAttribute("value"));
}
catch {
threadPriority = DefaultThumbnailThreadPriority;
}
}
else {
threadPriority = DefaultThumbnailThreadPriority;
}
return new ThumbnailSettings(size, interpolationMode, backColor, threadPriority);
}
开发者ID:hazychill,项目名称:oog,代码行数:65,代码来源:ThumbnailSetting.cs
注:本文中的System.ComponentModel.EnumConverter类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论