UWP-从视图模型设置活动数据透视项

UWP-从视图模型设置活动数据透视项,uwp,uwp-xaml,Uwp,Uwp Xaml,对于UWP数据透视,如何有问题地选择特定数据透视项(选项卡) 这是我到目前为止所拥有的。注意,在ViewModel的Load方法中,我试图设置SelectedIndex。这只是抛出一个异常,那么如何从代码中将数据透视项设置为活动项呢 MainPage.xaml <StackPanel> <Pivot x:Name="pivot" SelectedItem="{x:Bind ViewModel.PivotSelectedIndex, Mode

对于UWP数据透视,如何有问题地选择特定数据透视项(选项卡)

这是我到目前为止所拥有的。注意,在ViewModel的Load方法中,我试图设置SelectedIndex。这只是抛出一个异常,那么如何从代码中将数据透视项设置为活动项呢

MainPage.xaml

<StackPanel>
    <Pivot x:Name="pivot" SelectedItem="{x:Bind ViewModel.PivotSelectedIndex, Mode=TwoWay}">
        <PivotItem Header="A">
            <TextBlock Text="Tab A Content" />
        </PivotItem>
        <PivotItem Header="B">
            <TextBlock Text="Tab B Content" />
        </PivotItem>
        <PivotItem Header="C">
            <TextBlock Text="Tab C Content" />
        </PivotItem>
        <PivotItem Header="D">
            <TextBlock Text="Tab D Content" />
        </PivotItem>
        <PivotItem Header="E">
            <TextBlock Text="Tab E Content" />
        </PivotItem>
    </Pivot>
</StackPanel>
MainPageModel.cs

public sealed partial class MainPage : Page
{
    public MainPage()
    {
        this.InitializeComponent();

        ViewModel = new MainPageViewModel();
    }

    protected override void OnNavigatedTo(NavigationEventArgs e)
    {
        ViewModel.Load();
    }

    public MainPageViewModel ViewModel
    {
        get { return (MainPageViewModel)GetValue(ViewModelProperty); }
        set { SetValue(ViewModelProperty, value); }
    }
    public static readonly DependencyProperty ViewModelProperty = DependencyProperty.Register(nameof(ViewModel), typeof(MainPageViewModel), typeof(MainPage), new PropertyMetadata(null));
}
public class MainPageViewModel : ObservableObject
{
    public void Load()
    {
        PivotSelectedIndex = 2;
    }

    private int _pivotSelectedIndex = 0;
    public int PivotSelectedIndex
    {
        get => _pivotSelectedIndex;
        set => Set(ref _pivotSelectedIndex, value);
    }
}

使用SelectedIndex代替SelectedItem

<Pivot x:Name="pivot" SelectedIndex="{x:Bind ViewModel.PivotSelectedIndex, Mode=TwoWay}">