Ok, ich hatte etwas Zeit, um tiefer in dieses Problem zu graben. Ich habe ein paar Klassen durchsucht, um zu sehen, wie Adobe dieses Rasterverhalten implementiert hat (Spalten teilweise anzeigen). Also, für diejenigen, die brauchen, um damit umzugehen, das benötigte Teil ist in DataGrid.as Datei, Methode configureScrollBars
.. tatsächlich, dieser Teil davon:
// if the last column is visible and partially offscreen (but it isn't the only
// column) then adjust the column count so we can scroll to see it
if (collectionHasRows && rowCount > 0 && colCount > 1 &&
listItems[0][colCount - 1].x +
visibleColumns[colCount - 1].width > (displayWidth - listContent.x + viewMetrics.left))
colCount--;
else if (colCount > 1 && !collectionHasRows)
{
// the slower computation requires adding up the previous columns
var colX:int = 0;
for (var i:int = 0; i < visibleColumns.length; i++)
{
colX += visibleColumns[i].width;
}
if (colX > (displayWidth - listContent.x + viewMetrics.left))
colCount--;
}
Das ist so ziemlich alles Code, was benötigt zu fangen und zu messen alle diese schwierigen geteilten Spalten in einem Gitter :)
Danke für Ihre Antwort. Ich habe bereits darüber nachgedacht, es selbst zu berechnen (naja, auf eine etwas andere Art ... etwas wie dataGridWidth% (visibleColumnsCount * columnWidth)). Ich habe mich nur gefragt, ob es eine vordefinierte Eigenschaft oder Methode gibt, um diesen Wert zu erhalten. – Antenka