wp8 アプリを作成しています。2 つのビューと 2 つのビューモデルがあります。
VMMainPage vmMainPage -> MainPage.xaml VMresortInfo vmResortInfo -> resortInfo.xaml
最初のものは正常に動作しています。ただし、2 番目のビューをビューモデルにバインドしようとすると問題が発生します。
まず、App.xaml.cs で、vmMainPage で行ったように vmResortInfo を初期化しました。
private static VMresortInfo vmResortInfo = null;
public static VMresortInfo VmResortInfo
{
get
{
if (vmResortInfo == null)
{
vmResortInfo = new VMresortInfo();
}
return vmResortInfo;
}
}
次に、resortInfo.xaml.cs で、ビューのデータ コンテキストを変更しました。
public resortInfo()
{
InitializeComponent();
DataContext = App.VmResortInfo;
}
最後に、次のようにビューをビューモデルにバインドしようとします。
<phone:PivotItem Header="info">
<ItemsControl ItemsSource="{Binding resort}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="4*"/>
</Grid.ColumnDefinitions>
<StackPanel Margin="5,5,5,5" Grid.Column="0">
<TextBlock Text="{Binding status}"/>
<TextBlock Text="{Binding name}"/>
</StackPanel>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</phone:PivotItem>
VMresortInfo は次のとおりです。
public class VMresortInfo
{
private Resort resort {get; set;}
public VMresortInfo()
{
this.resort = new Resort();
this.resort.name = "NAME";
this.resort.status = "abierta";
this.resort.imageURL = new Uri("/Assets/fm.png", UriKind.RelativeOrAbsolute);
}
public void setName(string resortNameSelected)
{
this.resort.name = resortNameSelected;
}
}
しかし、アプリを実行すると..情報は表示されません。
事前にthx。