IMAPITable::ExpandRow
Aplica-se a: Outlook 2013 | Outlook 2016
Expande uma categoria de tabela recolhida, adicionando as linhas de título de folha ou de nível inferior pertencentes à categoria à exibição da tabela.
HRESULT ExpandRow(
ULONG cbInstanceKey,
LPBYTE pbInstanceKey,
ULONG ulRowCount,
ULONG ulFlags,
LPSRowSet FAR * lppRows,
ULONG FAR * lpulMoreRows
);
Parâmetros
cbInstanceKey
[in] A contagem de bytes na propriedade PR_INSTANCE_KEY apontada pelo parâmetro pbInstanceKey .
pbInstanceKey
[in] Um ponteiro para a propriedade PR_INSTANCE_KEY (PidTagInstanceKey) que identifica a linha de título para a categoria.
ulRowCount
[in] O número máximo de linhas a serem retornadas no parâmetro lppRows .
ulFlags
Reservados; deve ser zero.
lppRows
[out] Um ponteiro para uma estrutura SRowSet que recebe as primeiras linhas (até ulRowCount) que foram inseridas na exibição da tabela como resultado da expansão. Essas linhas são inseridas após a linha de título identificada pelo parâmetro pbInstanceKey . O parâmetro lppRows pode ser NULL se o parâmetro ulRowCount for zero.
lpulMoreRows
[out] Um ponteiro para o número total de linhas que foram adicionadas à exibição da tabela.
Valor de retorno
S_OK
A categoria foi expandida com êxito.
MAPI_E_NOT_FOUND
A linha identificada pelo parâmetro pbInstanceKey não existe.
Comentários
O método IMAPITable::ExpandRow expande uma categoria de tabela recolhida, adicionando as linhas de título de folha ou de nível inferior que pertencem à categoria à exibição de tabela. Um limite para o número de linhas a serem retornadas no parâmetro lppRows pode ser especificado no parâmetro ulRowCount . Quando ulRowCount é definido como um valor maior que zero e uma ou mais linhas são retornadas no conjunto de linhas apontado por lppRows, a posição do indicador BOOKMARK_CURRENT é movida para a linha imediatamente após a última linha no conjunto de linhas.
Quando ulRowCount é definido como zero, solicitando que nenhuma folha ou linhas de título de nível inferior sejam adicionadas à categoria ou nenhuma linha seja retornada porque não há linhas de título de folha ou de nível inferior na categoria, a posição de BOOKMARK_CURRENT é definida como a linha seguindo a linha identificada por pbInstanceKey.
Observações para implementadores
Não gere notificações em linhas adicionadas a uma exibição de tabela devido à expansão da categoria.
Notas para chamadores
O número de linhas no conjunto de linhas apontado pelo parâmetro lppRows pode não ser igual ao número de linhas que foram realmente adicionadas à tabela, todo o conjunto de linhas de título de folha ou de nível inferior para a categoria. Erros podem ocorrer, como memória insuficiente ou o número de linhas na categoria que excedem o número especificado no parâmetro ulRowCount . Em ambos os casos, BOOKMARK_CURRENT será posicionado na última linha retornada. Para recuperar imediatamente o restante das linhas na categoria, chame IMAPITable::QueryRows.
Não espere receber uma notificação de tabela quando uma categoria alterar seu estado. Você pode manter um cache local de linhas que podem ser atualizadas a cada chamada ExpandRow ou CollapseRow .
Para obter mais informações sobre tabelas categorizadas, consulte Classificação e Categorização.
Referência do MFCMAPI
Para ver códigos de exemplo do MFCMAPI, confira a tabela a seguir.
Arquivo | Função | Comentário |
---|---|---|
ContentsTableListCtrl.cpp |
CContentsTableListCtrl::D oExpandCollapse |
O MFCMAPI usa o método IMAPITable::ExpandRow para expandir uma categoria de tabela recolhida. |