DataGrid控件主要是跟数据库连接使用的。。这个是在对话框中测试的!本例子是 Access为例的!
在对话框程序中添加,Microsoft Datagrid Control 6.0
#import "C:\Program Files\Common Files\System\Ado\msado15.dll" no_namespace rename("EOF","adoEOF")
CDatagrid1 m_Grid;//控件关联变量。。
_RecordsetPtr m_Precord; _ConnectionPtr m_Pconn;
try { m_Pconn.CreateInstance(__uuidof(Connection)); CString SQL=_T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Admin.mdb"); m_Pconn->Open((_bstr_t)SQL,(_bstr_t)_T(""),(_bstr_t)_T(""),adModeUnknown); } catch(_com_error e) { MessageBox(e.ErrorMessage(),_T("连接错误"),MB_OK|MB_ICONERROR); } try { m_Precord.CreateInstance(__uuidof(Recordset)); CString SQL = _T("select * from username"); m_Precord->CursorLocation = adUseClient; m_Precord->Open((_variant_t)SQL,_variant_t(m_Pconn,true),adOpenStatic,adLockOptimistic,adCmdText); m_Grid.put_Caption(_T("VS2005")); int nrow = m_Precord->GetRecordCount(); int ncol = m_Precord->GetFields()->Count; m_Grid.putref_DataSource(m_Precord); m_Grid.put_RowHeight(20); m_Grid.Refresh(); } catch(_com_error e) { MessageBox(e.ErrorMessage(),_T("连接错误"),MB_OK|MB_ICONERROR); }
m_Precord->CursorLocation = adUseClient; 注意这个的添加
这个就能实现数据库内容添加到,DataGrid控件了!!