C# と Xaml を使用して Windows 8 メトロ スタイル アプリケーションを開発しています。シンジケーション アイテムをデータソースとして含むシンジケーション ニュース フィード グリッドを取得しました。アイテムをクリックすると、ページのビュー ステートがスナップされ、ブラウザー コントロールが塗りつぶされたビュー状態になり、アプリケーションが幅 320 にスナップされ、Web サイトがブラウザー コントロール 1024 塗りつぶされたビューステイで開かれるようになります。
次のコードブロックを使用しています。ページは正しくスナップされましたが、アプリケーションはスナップされません。Filled + Snapped アプリケーションのスナップとブラウザー コントロールの組み合わせを実現するという目標を達成するにはどうすればよいでしょうか。
ここに私が使用しているコードがあります:
private async void ItemView_ItemClick(object sender, ItemClickEventArgs e)
{
FeedItem feedItem = (FeedItem)e.ClickedItem;
feedItem.Read = true;
ListView lv = e.OriginalSource as ListView;
if (lv.SelectedItem != null)
{
ListViewItem li = lv.SelectedItem as ListViewItem;
if (li != null) li.Template = Application.Current.Resources["ReadStandard80ItemTemplate"] as ControlTemplate;
}
//this.ApplicationViewStates.
this.Width = 320;
this.HorizontalAlignment = Windows.UI.Xaml.HorizontalAlignment.Right;
var CurrentViewState = Windows.UI.ViewManagement.ApplicationView.Value;
this.MainFramne.Width = 320;
VisualStateManager.GoToState(this.MainFramne, "Snapped", false);
Snapped.Storyboard.Begin();
await Windows.System.Launcher.LaunchUriAsync(new Uri(feedItem.Link.ToString()));
var test = Windows.UI.ViewManagement.ApplicationView.Value;
}