我使用TcxTreeList,当用户结束一个单元格时,我想知道用户所编辑的单元格的新值。在OnEditValueChanged中读取EditValue、Value等的值都是Null,我使用的EditProperties是TcxRadioGroupProperties。如何获取单元格的新值呢,或者直接读到哪一项是选中的。

解决方案 »

  1.   

    procedure TForm1.cxTreeList1Edited(Sender: TObject;
      AColumn: TcxTreeListColumn);
    begin
      self.Canvas.TextOut(0, 0,vartostr(acolumn.Value));
    end;如果还是空,你可以试其他列显示是否正常
      

  2.   

    看看有没有OnEditing事件。如果用Edited的话,应该是在编辑完成以后,焦点不在编辑的那个单元格之后才会触发。
    我用的是dxTreeList,Edited事件跟楼上贴的参数不一样。不知道Editing怎么样
      

  3.   

    谢谢三位兄弟光顾。在Edited和Editing中 AColumn.value的值都是Null,其他列则可以读到。可能是我使用了inplace editor的原因。
      

  4.   

    property里面有没有immdiatepost?有的话打上看看。不过这种xxxChanged事件理论上肯定是POST了值才触发的。有空试试。
      

  5.   

    谢谢6楼光顾,OnEditValueChanged是在敲击Enter或离开单元格的时候产生的,可这个时候我用EditValue或Value或Values还是读到Null,我想可能需要使用另外一个对象来读取。而不是使用TreeListNode