If I set a StackPanel or what ever bound area I have as 'Collapsed', does the data load?
Will it trigger its Loaded event?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Yes:
- Your data bindings will be evaluated,
- Your Initialized events will fire, and
- Your Loaded events will fire
But in the section of the visual tree under the Visibility="Collapsed"
element:
- Your controls will not be measured or arranged
- Your controls' Templates will not be applied
So the bottom line is, if you want to avoid loading data for invisible sections of your UI, don't load your data and set your DataContext until after the control is first measured. Also consider putting any complexity inside a template.