IMAPITable::ExpandRow
適用於:Outlook 2013 |Outlook 2016
展開折疊的數據表類別,將屬於類別目錄的分葉或較低層級標題數據列新增至數據表檢視。
HRESULT ExpandRow(
ULONG cbInstanceKey,
LPBYTE pbInstanceKey,
ULONG ulRowCount,
ULONG ulFlags,
LPSRowSet FAR * lppRows,
ULONG FAR * lpulMoreRows
);
參數
cbInstanceKey
[in] pbInstanceKey 參數所指向PR_INSTANCE_KEY屬性中的位元組計數。
pbInstanceKey
[in] PR_INSTANCE_KEY (PidTagInstanceKey) 屬性的指標,可識別類別目錄的標題列。
ulRowCount
[in] 要在 lppRows 參數中傳回的數據列數目上限。
ulFlags
保留;必須是零。
lppRows
[out] SRowSet 結構的指標,接收到 ulRowCount) 因展開而插入數據表檢視中的第一個 (。 這些數據列會插入 pbInstanceKey 參數所識別的標題列後面。 如果 ulRowCount 參數為零,則 lppRows 參數可以是 NULL。
lpulMoreRows
[out]已新增至數據表檢視之數據列總數的指標。
傳回值
S_OK
已成功擴充類別。
MAPI_E_NOT_FOUND
pbInstanceKey 參數所識別的數據列不存在。
註解
IMAPITable::ExpandRow 方法會展開折疊的數據表類別,將屬於類別目錄的分葉或較低層級標題數據列新增至數據表檢視。 您可以在 ulRowCount 參數中指定要在 lppRows 參數中傳回的數據列數目限制。 當 ulRowCount 設定為大於零的值,且 lppRows 所指向的數據列集中傳回一或多個數據列時,書籤BOOKMARK_CURRENT的位置會移至數據列集中最後一個數據列之後的列。
當 ulRowCount 設定為零時,要求將零個分葉或較低層級的標題數據列新增至類別,或傳回零個數據列,因為類別中沒有分葉或較低層級的標題列,BOOKMARK_CURRENT的位置會設定為 pbInstanceKey 所識別之數據列後面的數據列。
實作者注意事項
請勿在因類別擴充而新增至數據表檢視的數據列上產生通知。
呼叫者注意事項
lppRows 參數所指向之數據列集中的數據列數目可能不等於實際加入至數據表的數據列數目、類別目錄的整組分葉或較低層級標題數據列。 可能會發生錯誤,例如記憶體不足,或類別中的數據列數目超過 ulRowCount 參數中指定的數目。 不論是哪一種情況,BOOKMARK_CURRENT都會位於傳回的最後一個數據列。 若要立即擷取類別中的其餘數據列,請呼叫 IMAPITable::QueryRows。
當類別變更其狀態時,請勿收到數據表通知。 您可以維護可使用每個 ExpandRow 或 CollapseRow 呼叫來更新的數據列本機快取。
如需分類數據表的詳細資訊,請參閱 排序和分類。
MFCMAPI 參考
如需 MFCMAPI 範例程式代碼,請參閱下表。
檔案 | Function | Comment |
---|---|---|
ContentsTableListCtrl.cpp |
CContentsTableListCtrl::D oExpandCollapse |
MFCMAPI 使用 IMAPITable::ExpandRow 方法來展開折疊的數據表類別。 |