Not completely done yet, but so far so good. What its beginning to look like is that I don't have much to do in the grid itself, as most of the dimensions are scaled first in the client/host before being passed from the client to the grid. The only thing that isn't are the grid column widths, which are passed in through my funky string setup, which kind of looks like so...
"Col1:150, Col2:200, Col3:525..........."
and that gets parsed apart in the grid code. So i'll need to size them (the column widths) with a scaling factor.
The only mysterious thing I've encountered though is that in the client and in the dll, when I call IsProcessDPIAware(), I'm getting a TRUE return even when neither my client nor my dll are calling SetProcessDPIAware(), and there aren't any manifests either where I'm setting this. Above I stated I was using a manifest to set this, but in the test code I'm working with now before moving to my main app, there isn't any manifest.
Also, at the moment I'm working with my C++ version of the grid control and doing C++ code. Also 64 bit. I don't know if that has anything to do with it, like possibly all 64 bit compiles end up being high DPI aware. I need to look into this further.