Visibility = IsCollapsed跳过数据绑定部分吗?

时间:2010-01-22 05:20:12

标签: wpf binding wpf-controls visibility

如果我设置了一个StackPanel或者我绑定的区域为'Collapsed',数据是否加载?
它会触发其Loaded事件吗?

1 个答案:

答案 0 :(得分:11)

是:

  • 将评估您的数据绑定,
  • 您的已初始化事件将会触发,
  • 您的已加载活动将会启动

但是在Visibility="Collapsed"元素下的可视树中:

  • 您的控件不会被测量或安排
  • 您的控件的模板将不会应用

所以最重要的是,如果你想避免为UI的不可见部分加载数据,那么在第一次测量控件之前,不要加载数据并设置DataContext。还要考虑在模板中添加任何复杂性。