We have a control that displays a large amount of data using a number of controls of varying sizes and complexities. Due to the large amount of controls that need to be layed out, there can be a very noticable delay.
We know the delay comes from the Measure/Arrange functions as we have a test class that derrives from a stackpanel that overrrides them with some timing code.
We dont want to use virtualization due to the side affects of the scrollbars constantly changing their range, and we dont want to hide the data under expanders or any other collapsing controls as the client has requested that we display it all in one long list. However, they want to know that the control is actually doing something when the delay occurs, some kind of progress status.
So my question is - Is there somehow a way of creating a control that displays a loading animation as an adorner or something until its content has actually been laid out? I appreciate this probably isn't possible as the arranging/measuring is also done on the UI thread.