DBGridEh透过ini保存列宽和列位置

DBGridEh通过ini保存列宽和列位置
我想实现的是,在窗口中当我拖动了列宽和列位置之后,将列的宽度和位置都保存到ini文件中,当下次再打开这个窗口时,DBGridEh的列宽和列位置还显示为我上次修改后的宽度和位置。

我用:
DBGridEh1.SaveGridLayoutIni('D:\aaa.ini',DBGridEh1.Owner.ClassName+'$'+DBGridEh1.Name,True);
可以将列的相关信息保存到ini文件中,但我在窗体创建事件中用以下代码无法还原我修改后的列位置,
还是显示为最初设计时的列位置:
procedure TfrmInput.FormCreate(Sender: TObject);
var
  RestoreParams: TDBGridEhRestoreParams;
begin
  DBGridEh1.RestoreGridLayoutIni('d:\aaa.ini',DBGridEh1.Owner.ClassName+'$'+DBGridEh1.Name,RestoreParams);
end;


请问哪位写过类似的好用的代码给提供一下,感谢!

------解决方案--------------------
ehlib本来就另外提供了保存控件属性配置的控件:
看一下其DEMO下的PropStorageEh(还要配合里面ehlib的一个带torage的控件,用来设置保存.ini文件名称及路径的,手头没有D,忘名字了)组件的使用:

PropStorageEh1.LoadProperties;//加载信息
//要保存的属性可以直接在界面上双击进去设置
PropStorageEh1.SaveProperties;//保存信息

------解决方案--------------------
procedure TForm1.Button1Click(Sender: TObject);
begin
  DBGridEh1.SaveGridLayoutIni('C:\DBGridEh.ini',DBGridEh1.ClassName,True);
end;

procedure TForm1.FormCreate(Sender: TObject);
var
  MyRestoreParams :TDBGridEhRestoreParams;
begin
  MyRestoreParams :=[grpColIndexEh,grpColWidthsEh,grpSortMarkerEh,grpColVisibleEh,grpRowHeightEh];  DBGridEh1.RestoreGridLayoutIni('C:\DBGridEh.ini',DBGridEh1.ClassName,MyRestoreParams);
end;
注意红色字体部分的变量赋值,经测试这样就可以了。