将ItemsControl的任何/所有元素添加到VisualTree时是否触发任何事件?

时间:2013-04-17 09:49:31

标签: events windows-runtime winrt-xaml

将容器添加到树中时会发生

FrameworkElement.Loaded

我需要根据添加到ItemsControl的所有数据绑定项的测量值进行一些自定义滚动。

可以连接到LayoutUpdated之类的事件,然后追踪后代,计算孩子,但这是非常繁重的工作。

在将ItemsControl的任何/所有数据绑定元素添加到VisualTree时是否会触发任何事件?

1 个答案:

答案 0 :(得分:1)

您可以将ItemsControl子类化,以获得获取项目的最佳性能:

public class CustomListView : ListView
{
    protected override DependencyObject GetContainerForItemOverride()
    {
        var listViewItem = base.GetContainerForItemOverride();

        // process the ListViewItem

        return listViewItem;
    }
}