0

在我的 xaml 中,我有 2 个不同AppBarr的资源:

 <phone:PhoneApplicationPage.Resources>

    <shell:ApplicationBar x:Key="appbar1" IsVisible="True">
        <shell:ApplicationBarIconButton x:Name="abMain1" IconUri="/icons/appbar.radeos.png" Text="radeos"
                                        Click="abMain_Click" />
    </shell:ApplicationBar>

    <shell:ApplicationBar x:Key="appbar2" IsVisible="True">
        <shell:ApplicationBarIconButton x:Name="abMain" IconUri="/icons/appbar.radeos.png" Text="radeos"
                                        Click="abMain_Click" />
        <shell:ApplicationBarIconButton x:Name="abLast" IconUri="/icons/appbar.back.rest.png" Text="last"
                                        Click="abLast_Click" />
        <shell:ApplicationBarIconButton x:Name="abNext" IconUri="/icons/appbar.next.rest.png" Text="next"
                                        Click="abNext_Click" />
        <shell:ApplicationBarIconButton x:Name="abClosePopup" IconUri="/icons/appbar.cancel.rest.png" Text="close"
                                        Click="abClosePopup_Click" />
    </shell:ApplicationBar>

</phone:PhoneApplicationPage.Resources>

我在代码中切换它,当我需要它时使用:

ApplicationBar = (Microsoft.Phone.Shell.ApplicationBar) Resources["appbar1"];

或者

ApplicationBar = (Microsoft.Phone.Shell.ApplicationBar) Resources["appbar2"];

abMain1问题是:如何在代码中的任何位置获取 AppBarr 按钮(例如)的实例?
Visual Studio 看到这个字段,但它总是null(因为它在资源中)。

4

1 回答 1

0

您应该可以像这样访问

ApplicationBarIconButton abMain1Button = (ApplicationBarIconButton) ApplicationBar.Buttons[0];
于 2013-05-03T06:36:19.970 回答