Как изменить текст Welcome в tbTitleTextBlock со страницы в фрейме? Спасибо
DataContext
в tbTitleTextBlock совпадает с заголовком NavigationView
. Таким образом, вы можете использовать Text="{Binding}"
для получения содержимого родительского DataContext
. И когда вы изменяете свойство заголовка NavigationView
, tbTitleTextBlock автоматически изменится.
<NavigationView.HeaderTemplate>
<DataTemplate>
<Grid Margin="24,10,0,0">
<TextBlock Style="{StaticResource TitleTextBlockStyle}"
Name="tbTitleTextBlock"
FontSize="28"
VerticalAlignment="Center"
Text="{Binding}"/>
</Grid>
</DataTemplate>
</NavigationView.HeaderTemplate>
Использование
private void NavigationView_SelectionChanged(NavigationView sender, NavigationViewSelectionChangedEventArgs args)
{
if (args.IsSettingsSelected)
{
contentFrame.Navigate(typeof(SampleSettingsPage));
}
else
{
var selectedItem = (NavigationViewItem)args.SelectedItem;
string pageName = "AppUIBasics.SamplePages." + ((string) selectedItem.Tag);
sender.Header = pageName;
Type pageType = Type.GetType(pageName);
contentFrame.Navigate(pageType);
}
}