CWnd::GetDSCCursor
Llame a esta función miembro para recuperar un puntero al cursor subyacente definido por el origen de datos, el nombre de usuario, la contraseña, y las propiedades de SQL del control de origen de datos.
IUnknown * GetDSCCursor( );
Valor devuelto
Un puntero al cursor definido por un control de origen de datos.MFC se encarga de llamar a AddRef para el puntero.
Comentarios
Utilice el puntero devuelto para establecer la propiedad de ICursor de un control enlazado a datos complejo, como el control de cuadrícula dato- enlazado.Un control de origen de datos no será activo hasta que el primer control enlazado solicite el cursor.Esto puede suceder explícitamente por una llamada a GetDSCCursor o implícitamente por el administrador de MFC.En cualquier caso, puede crear un control de origen de datos para hacer activo llamando a GetDSCCursor y a continuación Liberar en el puntero devuelto a IUnknown.Activación hará que el control de origen de datos para intentar conectarse al origen de datos subyacente.El puntero devuelto se puede utilizar en el contexto siguiente:
Ejemplo
BOOL CMyDlg::OnInitDialog()
{
...
// Find the child controls on the dialog
HRESULT hr = E_FAIL;
CWnd* pDSC = GetDlgItem(IDC_DATASOURCE);
CWnd* pListWnd = GetDlgItem(IDC_DBLIST1);
IUnknown* punkList = pListWnd->GetControlUnknown();
IDBList* pList = NULL;
if (NULL != punkList)
{
hr = punkList->QueryInterface(__uuidof(IDBList), (void**)&pList);
}
if (SUCCEEDED(hr))
{
// Tell the MFC binding manager that we are
// binding DISPID 3 to the data-source control.
pListWnd->BindProperty(0x3, pDSC);
// Tell the listbox which field to expose as its bound column
pList->put_BoundColumn(_T("ContactFirstName"));
// Tell the listbox which cursor and column to populate its list from
pList->put_ListField(_T("ContactFirstName"));
IUnknown* punkCursor = pDSC->GetDSCCursor();
if (NULL != punkCursor)
{
punkCursor->Release();
}
pList->Release();
...
return TRUE;
}
Requisitos
encabezado: afxwin.h