【问题标题】:How to bind content in a headertemplate of Panorama Item如何在全景项目的 headertemplate 中绑定内容
【发布时间】:2012-08-12 11:21:52
【问题描述】:

我正在开发 Wp7 我在应用程序资源 (App.xaml) 中为全景项目标题创建了标题模板:

<DataTemplate x:Key="MainPanoramaHeaderTemplate">
                <TextBlock Text="{Binding title}" Margin="0,15,0,0"
                           Name="CurrentTitle"
                               FontSize="37" FontWeight="SemiBold"
                       Foreground="{StaticResource CurrentThemeColorLight}"
                       ></TextBlock>
            </DataTemplate>

我已将此模板应用于全景项目:

<controls:Panorama Name="MainPanorama" Margin="0,76,0,0">
            <controls:PanoramaItem
                Name="pano1"
                HeaderTemplate="{StaticResource MainPanoramaHeaderTemplate}">
                <Grid></Grid>
            </controls:PanoramaItem>

在后面的代码中,我尝试绑定 pano1.Datacontext。 但什么也没发生? 实际上我有一个全景项目,在不同的情况下可以有 2-3 个不同的标题。

我该怎么做?

提前致谢。

【问题讨论】:

  • 你试图将 pano1.DataContext 绑定到什么?
  • 我尝试了一个对象和一个具有属性字符串标题的类列表。
  • 您是否实现了该类以启用绑定/通知 (myprogrammingdial.blogspot.com/2012/03/…)?您是否在输出窗口中遇到任何绑定错误?
  • 你在哪里初始化你绑定的标题,你是如何绑定DataContext的?你能放一些代码吗??

标签: c# windows-phone-7 xaml data-binding datatemplate


【解决方案1】:

试试:

        <DataTemplate x:Key="MainPanoramaHeaderTemplate">
            <TextBlock Text="{Binding}" Margin="0,15,0,0"
                       Name="CurrentTitle"
                           FontSize="37" FontWeight="SemiBold"
                   Foreground="{StaticResource CurrentThemeColorLight}"/>
        </DataTemplate>

还有

        <controls:PanoramaItem Header="{Binding title}" HeaderTemplate="{StaticResource MainPanoramaHeaderTemplate}">

它对我有用。让我知道它是否不起作用。我会进一步帮助你:)

注意:我的 ViewModel 中有 title 属性,并使用以下语句将其引用到 mainPage 上的 dataContext

        DataContext = App.ViewModel;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-20
    • 2011-11-21
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多