在枢轴选择更改上添加自定义用户控件

Add custom user control on pivot selection change

我有一个带有自定义用户控件的 Pivot。

 <Pivot.ItemTemplate>
                <DataTemplate>
                    <local1:mycustomusercontrol></local1:mycustomusercontrol>
                </DataTemplate>
  </Pivot.ItemTemplate>

现在,在 Pivot 上更改所选项目时,我希望将我的 mycustomusercontrol 替换为另一个用户控件。有办法实现吗?

  private void PivotContainer_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        if (PivotContainer.SelectedIndex != 0)
        {
           //Change user control
        }
    }

UIElement 有 属性 Children 其中包含它包含的所有子元素,您也许可以尝试更改它。

但是,我个人更喜欢使用 DataTemplateSelector 并在其中根据显示在该位置的 ViewModel 上的某些标准定义 DataTemplate 显示的逻辑。

或者,如果 DataTemplateSelector 不适合您,您可以在 mycustomusercontrol 中定义这两种状态并切换它们的可见性。

您的问题有很多解决方案。