Как программно установить заголовок выбранного элемента Панорамы? - PullRequest
1 голос
/ 19 декабря 2011

Например: у меня есть заголовок, который называется меню 1 и меню 2

Как изменить текст в коде?

1 Ответ

2 голосов
/ 19 декабря 2011

Если вы добавляете контент в Panorama статически (в конструкторе), вы можете получить доступ к заголовкам следующим образом:

<Grid x:Name="LayoutRoot" Background="Transparent">

    <controls:Panorama Title="my application" x:Name="MyPanorama">
        <controls:Panorama.Background>
            <ImageBrush ImageSource="PanoramaBackground.png"/>
        </controls:Panorama.Background>

        <controls:PanoramaItem Header="first item">

Код:

var panoramaItem = MyPanorama.Items[0] as PanoramaItem;
if (panoramaItem != null)
{
    panoramaItem.Header = "New Title";
}

Или, если вы хотитетекущий PanoramaItem меняет свой заголовок:

var panoramaItem = MyPanorama.SelectedItem as PanoramaItem;
if (panoramaItem != null)
{
    panoramaItem.Header = "New Title";
}

Или, когда вы присваиваете PanoramaItem имя, подобное этому:

<controls:Panorama Title="my application" x:Name="MyPanorama">
    <controls:Panorama.Background>
        <ImageBrush ImageSource="PanoramaBackground.png"/>
    </controls:Panorama.Background>

    <controls:PanoramaItem Header="first item" x:Name="FirstItem">

Тогда вы можете кодировать:

FirstItem.Header = "New Title";

Когда вы используете DataBinding для создания PanoramaItems, вы можете просто изменить свойство объекта данных / ViewModel, которое привязано к заголовку, и оно обновится автоматически.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...