TabView的子级会触发哪些事件?

时间:2019-11-15 17:22:37

标签: xaml uwp tabview

我有这样的TabView

<TabView ItemsSource="{Binding Documents}">
    <TabView.ItemTemplate>
        <DataTemplate>
             <local:MyUserControl />
        </DataTemplate>
    </TabView.ItemTemplate>
</TabView>

我已经为MyUserControl.Loaded事件设置了事件处理程序,只是为了看看会发生什么。令人惊讶的是,无论哪个选项卡处于活动状态,事件仅触发一次。当您在标签之间切换时,Loaded事件不会触发一次以上

因此,我尝试捕获Visibily更改的事件(使用RegisterPropertyChangedCallback方法)。它从未被解雇!

然后,我想知道MyCustomControl中是否有任何事件活动选项卡更改时,因为没有触发Loaded和“ VisibilityChanged”事件?

每当TabView活动内容更改时,我都需要通过消息总线发送一条消息,但是我需要MyUserControl知道该更改,因为它是唯一知道在消息内部发送内容的消息。

1 个答案:

答案 0 :(得分:0)

  

我需要在被“激活”的孩子(一个   其内容在每个选项卡开关上可见)

您可以为Tapped使用 local:MyUserControl 事件,然后使用DataContext来读取现在正在点击的项目。轻按将在加载所有事件之前触发。因此,这将有助于您激活“拦截儿童”。