Freigeben über


IMAPITable::ExpandRow

Gilt für: Outlook 2013 | Outlook 2016

Erweitert eine reduzierte Tabellenkategorie und fügt der Tabellenansicht die Blattzeilen oder Überschriftenzeilen auf niedrigerer Ebene hinzu, die zur Kategorie gehören.

HRESULT ExpandRow(
ULONG cbInstanceKey,
LPBYTE pbInstanceKey,
ULONG ulRowCount,
ULONG ulFlags,
LPSRowSet FAR * lppRows,
ULONG FAR * lpulMoreRows
);

Parameter

cbInstanceKey

[in] Die Anzahl der Bytes in der PR_INSTANCE_KEY Eigenschaft, auf die der pbInstanceKey-Parameter verweist.

pbInstanceKey

[in] Ein Zeiger auf die eigenschaft PR_INSTANCE_KEY (PidTagInstanceKey), die die Überschriftenzeile für die Kategorie identifiziert.

ulRowCount

[in] Die maximale Anzahl von Zeilen, die im lppRows-Parameter zurückgegeben werden sollen.

ulFlags

Reserviert; muss null sein.

lppRows

[out] Ein Zeiger auf eine SRowSet-Struktur , die die ersten Zeilen (bis zu ulRowCount) empfängt, die als Ergebnis der Erweiterung in die Tabellenansicht eingefügt wurden. Diese Zeilen werden nach der Überschriftenzeile eingefügt, die durch den pbInstanceKey-Parameter identifiziert wird. Der lppRows-Parameter kann NULL sein, wenn der ulRowCount-Parameter null ist.

lpulMoreRows

[out] Ein Zeiger auf die Gesamtzahl der Zeilen, die der Tabellenansicht hinzugefügt wurden.

Rückgabewert

S_OK

Die Kategorie wurde erfolgreich erweitert.

MAPI_E_NOT_FOUND

Die durch den pbInstanceKey-Parameter identifizierte Zeile ist nicht vorhanden.

Hinweise

Die IMAPITable::ExpandRow-Methode erweitert eine reduzierte Tabellenkategorie und fügt der Tabellenansicht die Blattzeilen oder Überschriftenzeilen auf niedrigerer Ebene hinzu, die zur Kategorie gehören. Im parameter ulRowCount kann ein Grenzwert für die Anzahl von Zeilen angegeben werden, die im lppRows-Parameter zurückgegeben werden sollen. Wenn ulRowCount auf einen Wert größer als 0 (null) festgelegt ist und eine oder mehrere Zeilen in der Zeile zurückgegeben werden, auf die lppRows zeigt, wird die Position des Lesezeichens BOOKMARK_CURRENT in die Zeile verschoben, die unmittelbar auf die letzte Zeile im Zeilensatz folgt.

Wenn ulRowCount auf 0 (null) festgelegt ist und fordert, dass der Kategorie null Blattzeilen oder Überschriftenzeilen auf niedrigerer Ebene hinzugefügt werden oder null Zeilen zurückgegeben werden, da es in der Kategorie keine Überschriftenzeilen oder Überschriften auf niedrigerer Ebene gibt, wird die Position von BOOKMARK_CURRENT auf die Zeile festgelegt, die der durch pbInstanceKey identifizierten Zeile folgt.

Hinweise für Implementierer

Generieren Sie keine Benachrichtigungen für Zeilen, die einer Tabellenansicht aufgrund einer Kategorieerweiterung hinzugefügt werden.

Hinweise für Aufrufer

Die Anzahl der Zeilen in der Zeile, auf die der lppRows-Parameter verweist, entspricht möglicherweise nicht der Anzahl der Zeilen, die der Tabelle tatsächlich hinzugefügt wurden, dem gesamten Satz von Blattzeilen oder Überschriften auf niedrigerer Ebene für die Kategorie. Fehler können auftreten, z. B. unzureichender Arbeitsspeicher oder die Anzahl der Zeilen in der Kategorie, die die im ulRowCount-Parameter angegebene Anzahl überschreitet. In beiden Fällen wird BOOKMARK_CURRENT in der letzten zurückgegebenen Zeile positioniert. Um die restlichen Zeilen in der Kategorie sofort abzurufen, rufen Sie IMAPITable::QueryRows auf.

Erwarten Sie nicht, dass Sie eine Tabellenbenachrichtigung erhalten, wenn sich der Status einer Kategorie ändert. Sie können einen lokalen Cache mit Zeilen verwalten, die mit jedem ExpandRow- oder CollapseRow-Aufruf aktualisiert werden können.

Weitere Informationen zu kategorisierten Tabellen finden Sie unter Sortieren und Kategorisieren.

MFCMAPI-Referenz

Einen MFCMAP-Beispielcode finden Sie in der folgenden Tabelle.

Datei Funktion Kommentar
ContentsTableListCtrl.cpp
CContentsTableListCtrl::D oExpandCollapse
MFCMAPI verwendet die IMAPITable::ExpandRow-Methode zum Erweitern einer reduzierten Tabellenkategorie.

Siehe auch

IMAPITable::CollapseRow

IMAPITable : IUnknown

MFCMAPI (engl.) als ein Codebeispiel