The grid has simple functions for calculating physical boundaries of rows, cells, contexts etc... in screen pixels.
Dapfor::Common::CDataObject* testClass;
bool visible = m_Grid.IsVisible(testClass);
Dapfor::GUI::HITEM handle;
bool visible = m_Grid.IsVisible(handle);
m_Grid.EnsureVisible(testClass);
m_Grid.EnsureVisible(handle);
m_Grid.EnsureVisible(1);
CRect bounds = GetCellVisibleRect(handle, CTestClass::FidPrice);
CRect bounds = GetLineVisibleRect(handle);
CRect bounds = GetContextVisibleRect(Dapfor::GUI::ScrollableContext);
CRect bounds = GetCellVirtualRect(handle, CTestClass::FidPrice);
CRect bounds = GetLineVirtualRect(handle);
CRect bounds = GetContextVirtualRect(Dapfor::GUI::ScrollableContext);
int rowsPerPage = m_Grid.GetLinesPerPage(true);
int height = m_Grid.GetItemHeight(handle);
m_Grid.SetFirstVisibleRow(1);
m_Grid.SetFirstVisibleItem(handle);
m_Grid.SetFirstVisibleItem(testClass);