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控件了!!
|