Hi!
Well, there is also another approach. Check out "VFP Grids" articles for many useful tips related to grids. There is also an approach described how to organize events, custom headers etc. in your grid.
>>Cetin,
>
>After trying I found that I had to have a
> grid.RECORDSOURCE=''
> grid.columncount=0
>
>before adding columns with a function
>
> grid.ColAdd('col1','Ident','x.CallId',40)
>
>and then at the end have
>
> grid.RECORDSOURCE='x'
> grid.RECORDSOURCETYPE=1
>
>If the line with recordsource='' was not added, the width were all equal to a default value.
>
>But then all my columns was replaced with the fields from the alias and only my widths was OK. So then I found that I had to add columns with width before adding the recordsource and then replace column countrolsource and heading at the end.
>
> .RECORDSOURCE=''
> .columncount=0
>
> .ColAdd('col1',nLen)
>
>
> .RECORDSOURCE='x'
> .RECORDSOURCETYPE=1
>
> .ColRep('col1','Ident','x.Id')
>
>
>The grid.colAdd() contains code to replace .header1 and .text1 with my own classes to allow double-click and so on.
>
>Does it have to be so difficult?
Vlad Grynchyshyn, Project Manager, MCP
vgryn@yahoo.comICQ #10709245
The professional level of programmer could be determined by level of stupidity of his/her bugs
It is not appropriate to say that question is "foolish". There could be only foolish answers. Everybody passed period of time when knows nothing about something.