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. |