主题:求教:c#中关于类型转换的问题
问题如下,想吧字符串变成相应的属性类型,使用converter函数:
Type type;
object instance;
string[] Name = new string[5]{ "Text", "Font", "Location", "Size", "BackColor" };
string[] Value = new string[5]{ "Haha", "宋体, 12pt", "23,23", "400,400", "255, 192, 192" };
string strType = "System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
type = Type.GetType(strType); //获得type
instance = Activator.CreateInstance(type); //创建一个实例
for (int i = 0; i < 5; i++)
{
object value;
PropertyDescriptor prop = TypeDescriptor.GetProperties(instance)[Name[i]];
value = prop.Converter.ConvertFromInvariantString(Value[i]);
}
程序把5个属性分别赋了相应值,赋值过程中,由于属性值是以字符串形势给出,所以要转为相应属性类型,使用ConvertFromInvariantString函数可以达到功能要求.
现在问题这样.我建立了一个wince的工程,里面converter类不能使用函数ConvertFromInvariantString,这里想求教一下,怎样用别的方法实现这个转化?有没有比较好的方法?给提供一个思路也可以!~
望大家多帮帮忙,谢谢了先~~!!
Type type;
object instance;
string[] Name = new string[5]{ "Text", "Font", "Location", "Size", "BackColor" };
string[] Value = new string[5]{ "Haha", "宋体, 12pt", "23,23", "400,400", "255, 192, 192" };
string strType = "System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
type = Type.GetType(strType); //获得type
instance = Activator.CreateInstance(type); //创建一个实例
for (int i = 0; i < 5; i++)
{
object value;
PropertyDescriptor prop = TypeDescriptor.GetProperties(instance)[Name[i]];
value = prop.Converter.ConvertFromInvariantString(Value[i]);
}
程序把5个属性分别赋了相应值,赋值过程中,由于属性值是以字符串形势给出,所以要转为相应属性类型,使用ConvertFromInvariantString函数可以达到功能要求.
现在问题这样.我建立了一个wince的工程,里面converter类不能使用函数ConvertFromInvariantString,这里想求教一下,怎样用别的方法实现这个转化?有没有比较好的方法?给提供一个思路也可以!~
望大家多帮帮忙,谢谢了先~~!!