>>With/Endwith is a readability issue more than anything else.
>
>I think there's a definite speed issue. Doesn't using the long version mean that the application has to 'walk' the entire chain of pointers each time you reference the object?
Not with an optimizing compiler <g>... but then I don't think the C# compiler current does that sort of optimization.
with endwith is really compiler sugar and the compiler behind the scenes actually creates a variable and uses it.
So if you want to do this in C# the way to approach this is to use a local variable instead of the with/endwith which gives the same performance and most likely very close IL code.
Personally I never used with/endwith even in VFP which had it. I prefer readibility of a local variable because THAT clearly identifies what you are dealing with.