未设置 AppBarButton 可见性
AppBarButton Visibility is not set
我在代码隐藏中设置 AppBarButton 可见性时遇到问题。
有我的XAML:
<Page.BottomAppBar>
<AppBar Background="{ThemeResource AppBarBackgroundThemeBrush}">
<StackPanel Orientation="Horizontal">
<AppBarButton Icon="Save" Label="Uložit" x:Name="AppBarButtonSave" Click="AppBarButtonSave_OnClick" />
<AppBarButton Icon="Mail" Label="Odeslat" x:Name="AppBarButtonMail" Visibility="Collapsed" />
<AppBarButton Icon="Clear" Label="Zrušit" x:Name="AppBarButtonCancel" Click="AppBarButtonCancel_OnClick" />
<AppBarButton Icon="Help" Label="Info" x:Name="AppBarButtonAbout" Click="AppBarButtonAbout_Click" />
</StackPanel>
</AppBar>
</Page.BottomAppBar>
还有我的 C#:
public MainPage()
{
this.InitializeComponent();
this.LoadLastResult();
}
private void LoadLastResult()
{
var savedItems = (List<AresDb>)this.lvwSaved.ItemsSource;
if (savedItems.Any(o => o.Ico == ares.Info.Ico))
{
this.AppBarButtonSave.Visibility = Visibility.Collapsed;
}
}
即使代码被触发,按钮仍然可见。但是,如果我尝试在某些 Click 操作中设置可见性,例如。单击按钮时,可见性设置正确。
有没有人知道,为什么它在点击操作时效果很好,但在应用程序启动时却不行?
毕竟我想通了。 Pivot OnSelectionChange 方法有问题。因为当应用程序启动时,这个方法在所有其他方法之后被调用。所以它将我的 AppBarButton 可见性设置回可见。但是当你触发点击动作时,这个方法并没有被触发。
我在代码隐藏中设置 AppBarButton 可见性时遇到问题。
有我的XAML:
<Page.BottomAppBar>
<AppBar Background="{ThemeResource AppBarBackgroundThemeBrush}">
<StackPanel Orientation="Horizontal">
<AppBarButton Icon="Save" Label="Uložit" x:Name="AppBarButtonSave" Click="AppBarButtonSave_OnClick" />
<AppBarButton Icon="Mail" Label="Odeslat" x:Name="AppBarButtonMail" Visibility="Collapsed" />
<AppBarButton Icon="Clear" Label="Zrušit" x:Name="AppBarButtonCancel" Click="AppBarButtonCancel_OnClick" />
<AppBarButton Icon="Help" Label="Info" x:Name="AppBarButtonAbout" Click="AppBarButtonAbout_Click" />
</StackPanel>
</AppBar>
</Page.BottomAppBar>
还有我的 C#:
public MainPage()
{
this.InitializeComponent();
this.LoadLastResult();
}
private void LoadLastResult()
{
var savedItems = (List<AresDb>)this.lvwSaved.ItemsSource;
if (savedItems.Any(o => o.Ico == ares.Info.Ico))
{
this.AppBarButtonSave.Visibility = Visibility.Collapsed;
}
}
即使代码被触发,按钮仍然可见。但是,如果我尝试在某些 Click 操作中设置可见性,例如。单击按钮时,可见性设置正确。
有没有人知道,为什么它在点击操作时效果很好,但在应用程序启动时却不行?
毕竟我想通了。 Pivot OnSelectionChange 方法有问题。因为当应用程序启动时,这个方法在所有其他方法之后被调用。所以它将我的 AppBarButton 可见性设置回可见。但是当你触发点击动作时,这个方法并没有被触发。