2013-04-24 14 views
0

我有一个PropertyGrid,未排序。未分类的属性网格中的父类

一个目的是从另一个类继承的对象:

[TypeConverter(typeof(ExpandableObjectConverter))] 
public class ExpandValues: Values 
{ 
    public double Value2 { get; set; } 

    public ExpandValues() 
     : base() 
    { 

    } 
    public ExpandValues(string name, double value1, double value2) 
     : base(name, value1) 
    { 
     Value2 = value2; 
    } 
} 

父类:

[TypeConverter(typeof(ExpandableObjectConverter))] 
public class Values 
{ 
    [Browsable(false)] 
    public string Name { get; set; } 
    public double Value { get; set; } 

    public Values() 
     : this(null, 0) 
    { 

    } 
    public Values(string name, double value) 
    { 
     Name = name; 
     Value = value; 

    } 
} 

当我打开包含该对象的类别ExpandValues正显示出我喜欢的值这样的:

Value2 
Value 

有我先告诉他的方式显示父类的对象(不使PropertyGrid中排序?)

回答

0

对于值是为了,我重写父类的可变value

我添加了一个虚拟到一个变量中父类:

public virtual double Value { get; set; } 

然后我重写他:

[TypeConverter(typeof(ExpandableObjectConverter))] 
public class ExpandValues: Values 
{ 
    public override double Value 
    { 
     get 
     { 
      return base.Value; 
     } 
     set 
     { 
      base.Value = value; 
     } 
    } 

    public double Value2 { get; set; } 

    public ExpandValues() 
     : base() 
    { 

    } 
    public ExpandValues(string name, double value1, double value2) 
     : base(name, value1) 
    { 
     Value2 = value2; 
    } 
}