public override object ConvertTo( CM::ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, System.Type destinationType ) { if (typeof(string) == destinationType) { string ret = TreeNodeCheckBox.GetName((ITreeNodeCheckBox)value); if (ret != null) { return(ret); } return("(" + value.GetType().ToString() + ")" + value.ToString()); } else if (typeof(CM::Design.Serialization.InstanceDescriptor) == destinationType) { string name = TreeNodeCheckBox.GetName((ITreeNodeCheckBox)value); if (name == null) { name = "DoubleBorder"; } return(new CM::Design.Serialization.InstanceDescriptor( ((System.Converter <string, ITreeNodeCheckBox>)GetInstance).Method, new object[] { name } )); } return(base.ConvertTo(context, culture, value, destinationType)); }
public override object ConvertFrom(CM::ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value) { if (value is string) { ITreeNodeCheckBox ret = TreeNodeCheckBox.GetInstance((string)value); if (ret != null) { return(ret); } return(TreeNodeCheckBox.DoubleBorder); } else if (value is ITreeNodeCheckBox) { return(value); } return(base.ConvertFrom(context, culture, value)); }
//============================================================ // 永続化変換 //============================================================ public static ITreeNodeCheckBox GetInstance(string name) { return(TreeNodeCheckBox.GetInstance(name)); }