0

我正在使用 C# 和 Xaml 开发一个 Windows 8 Metro 风格的应用程序。我得到了一个以联合项目作为数据源的联合新闻提要网格。当我单击一个项目时,我希望捕捉页面的视图状态并使浏览器控件处于填充视图状态,以便我的应用程序捕捉到 320 宽度并且网站在浏览器控件中打开 1024 填充视图。

我正在使用以下代码块。页面已正确捕捉,但应用程序未捕捉。我可以做些什么来实现我的目标,即应用程序捕捉和浏览器控件填充的填充 + 捕捉组合。

这是我正在使用的代码:

    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;

    }
4

1 回答 1

1

您无法以编程方式更改任何 Windows 应用商店应用程序的捕捉/填充/最大化状态。它只能响应用户发起的请求来完成。(这样做是为了防止应用程序进行欺骗或以其他方式进行恶意行为。)

如果您的应用程序处于最大化视图中,并且如果您已经处于快照视图中,那么您可能需要考虑在您的应用程序中托管一个浏览器实例 (WebView),然后您启动到外部浏览器(希望它应该被填满)。

于 2012-08-23T22:26:50.710 回答