无法将对象转换为自定义类型
public class Fteventlistlevelcompare : IComparer//实现用接口按照故障层次排序
{
public int Compare(object x, object y)
{
return new CaseInsensitiveComparer().Compare(((TreeNode)x).Level, ((TreeNode)y).Level);
//return new CaseInsensitiveComparer().Compare(((Ftevent)x).ftlevel, ((Ftevent)y).ftlevel);
}
}
为什么用TreeNode就可以对x进行类型转换,而用我自己定义的Ftevent就不能转换呢?
[最优解释]
加一个
MessageBox.Show(x.GetType().ToString());
MessageBox.Show(y.GetType().ToString());
输出什么
[其他解释]
第一你继承的基础类型 和 系统的不是一个,不存在转换。如果纯在请使用显示转换。
[其他解释]
是不是这个树节点的类型无法转换呢?
[其他解释]
x,y都是输出的这个
[其他解释]