Чем он отличается от DBGRID читайте "Шаг 59 - Чем плох DBGRID". Этот элемент управления можно подключить к проекту.
Как видите он находится в MSDATGRD.OCX. Он с классами будет в проекте. Классов он создает много.
Использовать его в принципе, то совсем не сложно. Возьмем проект из прошлого шага. Добавим описание классов. Мы можете либо взять их из проекта либо вставить элемент.
////////////////////// // CADOTestDlg dialog #include "adodc.h" #include "datagrid.h" #include "_recordset.h" class CADOTestDlg : public CDialog
Описываем объект:
class CADOTestDlg : public CDialog { // Construction public: CADOTestDlg(CWnd* pParent = NULL); // standard constructor CAdodc ca; C_Recordset cr; CDataGrid cmg; // Dialog Data
Ну и создать, показать, связать с ADODC
BOOL CADOTestDlg::OnInitDialog() { CDialog::OnInitDialog(); ca.Create(_T("STATIC"), "Hi", WS_CHILD | WS_VISIBLE, CRect(0, 0, 400, 200), this, 111); ca.ShowWindow(SW_HIDE); ca.SetConnectionString("PROVIDER=MSDASQL.1;dsn=Auto;uid=sa;pwd=123;database=auto;"); ca.SetRecordSource("SELECT * FROM car"); ca.Refresh(); cr=ca.GetRecordset(); cmg.Create(_T("STATIC"), "Hi", WS_CHILD | WS_VISIBLE, CRect(0, 0, 400, 200), this, 1111); cmg.ShowWindow(SW_SHOW); cmg.SetRefDataSource(cr); cmg.UpdateData(); long i=cr.GetRecordCount(); char buffer[255]; itoa(i,(char*)&buffer,10); AfxMessageBox(buffer); // Add "About..." menu item to system menu.
А вот результат: