基本上我想实现的功能是
能随意改变DataGrid里任意单元格Cell的背景色和前景色
这就需要继承DataGridTextBoxColumn这个对象 
然后调用其中Paint这个方法重绘指定单元格的背景色和前景色

解决方案 »

  1.   

    很显然,从dgt.GridColumnStyles[hi.Column]得到的是DataGridTextBoxColumn类型,怎么
    能转换成MyGridColumn呢?
    除非从dgt.GridColumnStyles[hi.Column]得到的是MyGridColumn类型.
    这是概念理解错误的问题:基类转换成子类.
    例如:
       class A
      {
       }   class B : A
      {
       }  A a1 = new A();
      B b1 = (B)a1;  (错误,基类转换成子类了)
      
      A a2 = new B();
      B B2 = (B)a2;  (这是正确的)
        
      

  2.   

    往dgt.GridColumnStyles里面插入MyGridColumn类型,而不要插入DataGridTextBoxColumn类型的,这样从dgt.GridColumnStyles[hi.Column]得到的就是MyGridColumn类型了,问题就OK了.