what is the actual difference between Recycling/Standard of VirtualizationMode property in VirtualizingStackPanel?
What is actually happening in VirtualizingStackPan开发者_如何学运维el.VirtualizationMode = Recycling/Standard.?
When VirtualizationMode
is set to Recycling
, the VirtualizingStackPanel
will reuse item containers instead of having to create a new one.
If we start out with this
-------------------------
| Container 1 | Data 1 |
-------------------------
| Container 2 | Data 2 |
-------------------------
| Container 3 | Data 3 |
And scroll one position down, so Data 1 is scrolled out of view and Data 4 is scrolled into view then Recyling will take the item container for Data 1 and reuse it for Data 4.
-------------------------
| Container 2 | Data 2 |
-------------------------
| Container 3 | Data 3 |
-------------------------
| Container 1 | Data 4 |
I've had some problems with this when using attached properties for the Item container, e.g Green background if I have entered edit mode for Container 1. Scrolling down and Data 4 will also have Green background since the Attached Property was still set.
When VirtualizationMode
is set to Standard
, the VirtualizingStackPanel
will create and discard item containers instead of reusing them.
精彩评论