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