Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save kimsk/5700685 to your computer and use it in GitHub Desktop.
Save kimsk/5700685 to your computer and use it in GitHub Desktop.
VisualTreeHelper, VisualTreeHelperExtensions และ DataTemplate FrameworkElement.Loaded event http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.frameworkelement.loaded.aspx VisualTreeHelperExtensions http://winrtxamltoolkit.codeplex.com/
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Markup;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
using WinRTXamlToolkit.Controls.Extensions;
namespace Win8DevThaiVisualTreeHelper
{
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
this.Loaded += MainPage_Loaded;
}
void MainPage_Loaded(object sender, RoutedEventArgs e)
{
var flipView = this.GetFirstDescendantOfType<FlipView>();
var scrollViewers = flipView.GetDescendantsOfType<ScrollViewer>();
foreach (var scrollViewer in scrollViewers)
{
scrollViewer.DoubleTapped += (o, dte) =>
{
// do something
};
}
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
var template = @"<FlipView xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation""><FlipView.ItemTemplate><DataTemplate> <ScrollViewer> <TextBlock Text=""{Binding}""/> </ScrollViewer> </DataTemplate> </FlipView.ItemTemplate></FlipView>";
var flipView = XamlReader.Load(template) as FlipView;
flipView.ItemsSource = new[] { "TEST", "TEST2", "TEST3"};
// in XAML <Grid x:Name="grid"/>
grid.Children.Add(flipView);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment