我通过扩展cxGrid创建了一个组件,并添加了一些必需的属性,我想做同样的事情,并向cxGridDBTableView添加一些额外的功能, 我尝试扩展cxGridDBTableView并添加了属性,但是我无法访问那些属性,因为当我放下TdxdmGrid时,它正在使用默认的cxgridTableView,但我想使用TdxdmGridDbtableView,
我尝试如下所示,但是它显示了2个不同的组件,并且我设计的视图未链接到网格。
如何实现? 请帮忙。
谢谢。
答案 0 :(得分:3)
cxGridRegisteredViews
而不是RegisterComponets()
注册View TcxGrid.GetDefaultViewClass()
。 DefaultView是将网格放置到窗体时创建的视图 TDXPDMGrid = class(TcxGrid)
...
protected
function GetDefaultViewClass: TcxCustomGridViewClass; override;
...
end;
...
function TDXPDMGrid.GetDefaultViewClass: TcxCustomGridViewClass;
begin
Result := TDXPDMGridDBTableView;
end;
...
initialization
cxGridRegisteredViews.Register(TDXPDMGridDBTableView, 'PDM Table');
...
finalization
cxGridRegisteredViews.Unregister(TDXPDMGridDBTableView);