<TextBlock Text="{Binding ElementName=flipView, Path=DataContext.Key}" FontSize="60" />
<Grid Name="grid"> <FlipView Name="flipView" ItemsSource="{Binding ModelItems}"> <FlipView.ItemTemplate> <DataTemplate> <StackPanel Orientation="Vertical"> <TextBlock Text="{Binding ElementName=flipView, Path=DataContext.Key}" FontSize="60" /> <TextBlock Text="{Binding Name}" FontSize="60" /> </StackPanel> </DataTemplate> </FlipView.ItemTemplate> </FlipView> </Grid>
public class BaseViewModelItem { public string Name { get; set; } } public class BaseViewModel { public ObservableCollection<BaseViewModelItem> ModelItems { get; set; } public string Key { get; set; } public BaseViewModel() { Key = "BingMapKeyFromCode"; ModelItems = new ObservableCollection<BaseViewModelItem>(); ModelItems.Add(new BaseViewModelItem() { Name = "Name 1" }); ModelItems.Add(new BaseViewModelItem() { Name = "Name 2" }); ModelItems.Add(new BaseViewModelItem() { Name = "Name 3" }); } }
public sealed partial class MainPage : Page { public MainPage() { this.InitializeComponent(); } protected override void OnNavigatedTo(NavigationEventArgs e) { grid.DataContext = new BaseViewModel(); // Or for page data context // this.DataContext = new BaseViewModel(); } }
Sachin S edited Original. Comment: Finishing initial draft
Sachin S edited Revision 2. Comment: Added link to another question answered thru this post.
Sachin S edited Revision 3. Comment: typo