CWnd::GetDSCCursor
Chamar essa função de membro para recuperar um ponteiro para o cursor subjacente é definido pelas propriedades DataSource, UserName, senha e SQL de dados-controle do código-fonte.
IUnknown * GetDSCCursor( );
Valor de retorno
Um ponteiro para um cursor que é definido por uma data-controle do código-fonte.MFC se encarrega de chamar AddRef o ponteiro.
Comentários
Use o ponteiro retornado para conjunto a propriedade ICursor de um controle limite a dados complexo, sistema autônomo o controle de grade com dados vinculados.Data-controle do código-fonte será não se tornar ativo até que o primeiro controle limite solicita seu cursor.Isso pode acontecer explicitamente por uma telefonar para GetDSCCursor ou implicitamente pelo Gerenciador de ligação do MFC. Em ambos os casos, você pode forçar dados-controle do código-fonte se torne ativo chamando GetDSCCursor e, em seguida, chamando Versão o ponteiro retornado de IUnknown.Ativação fará com que o controle de fonte de dados tentar se conectar à fonte de dados subjacente.O ponteiro retornado pode ser usado em contexto seguinte:
Exemplo
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
Cabeçalho: afxwin.h