CWnd::GetDSCCursor
Chiamare la funzione membro per recuperare un puntatore al cursore sottostante definito dall'origine, il nome utente, password dalle proprietà e di SQL del controllo origine dati.
IUnknown * GetDSCCursor( );
Valore restituito
Un puntatore a un cursore definito da un controllo origine dati.MFC consente infatti di chiamare AddRef per il puntatore.
Note
Utilizzare il puntatore restituito per impostare la proprietà di ICursor di un controllo associato a dati complesso, ad esempio il controllo griglia con associazione a dati.Un controllo origine dati non risulterà attivo finché il primo controllo associato non richiedono il cursore.Ciò può verificarsi in modo esplicito da una chiamata a GetDSCCursor o in modo implicito dall'amministratore di MFC.In entrambi i casi, è possibile forzare un controllo origine dati per diventare attivo chiamando GetDSCCursor e chiamando quindi Release sul puntatore restituito a IUnknown.L'attivazione modo il controllo origine dati a tentare di connettersi all'origine dati sottostante.Il puntatore restituito può essere utilizzato in questo contesto:
Esempio
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;
}
Requisiti
Header: afxwin.h