2

これは私を悩ませ始めていますが、私はいくつかの非常に単純な間違いを犯しているに違いありません. 現在、次の XAML コードがあります。

 <Grid x:Name="LayoutRoot" 
       DataContext="{StaticResource JourneyViewModel}">
    <phone:Panorama Title="Journeys" 
                    ItemsSource="{Binding journeys}">
        <DataTemplate>
            <TextBlock Text="{Binding name}" />
        </DataTemplate>

    </phone:Panorama>
</Grid>

これは、テキストブロックを名前で初期化する必要があるまで機能します。「journeys」パラメーターによって提供されるアイテムがあります。ただし、ジャーニーの名前を抽出してテキストブロックに入れたいのですが、これは単に機能していません。私の推測では、私の XAML コードは正しく行われていません。使用するクラスは次のとおりです。

    public ObservableCollection<JourneyModel> journeys
    {
        get
        {
            //I can verify with the debugger 
            //that this is not null and 
            //the variables inside the JourneyModels are set
            return _journeyModels;
        }
    }

JourneyModel:

 public string name
 {
      get { return _journey.name; }
      set
      {
          if (_journey.name != value)
                 _journey.name = value;
      }
 }

MVVM を正しく設定している場合は修正できます。これが私の最初のダッシュです。さらにコードビットが必要な場合はお知らせください。問題を十分に明確にすることを願っています。どんな助けでも大歓迎です!

編集:

ViewModel を読み込んでいます:

<UserControl.Resources>
    <my:JourneyViewModel  x:Key="JourneyViewModel"/>
</UserControl.Resources>
4

1 に答える 1

0

TextBlockコードは問題ありませんが、それ自体を見ることができません。またはのDataTemplate中に を入れる必要があります。ItemTemplateHeaderTemplate

<phone:Panorama Title="Journeys" ItemsSource="{Binding journeys}">
   <phone:Panorama.HeaderTemplate>
      <DataTemplate>
         <TextBlock Text="{Binding name}" />
      </DataTemplate>
   </phone:Panorama.HeaderTemplate>
</phone:Panorama>
于 2013-03-28T14:21:26.333 に答える