Webview中的ActualHeight和ActualWidth

时间:2017-12-05 11:04:41

标签: c# xaml webview uwp

我在UWP应用程序中使用c#代码创建webview。我已经为它附加了一个LoadCompleted事件。当此事件触发时ActaulHeight和ActualWidth为0.我尝试将其MinWidth和MinHeight设置为500.但它不起作用。

我在XAML中创建了一个webview控件,但是在那种情况下,ActualHeight和ActualWidth是500。

以下是代码:

 public WebView _webView { get; set; }

 public ViewPage()
{
   this.InitializeComponent();
     _webView = new WebView
        {
            HorizontalAlignment = HorizontalAlignment.Stretch,
            VerticalAlignment = VerticalAlignment.Top,
            Source = new Uri(@"https://www.google.com"),
            MinHeight = 500,
            MinWidth = 500
        };
}

  private void _webView_LoadCompleted(object sender, NavigationEventArgs e)
    {
       // Here, when  I debug _webview ActualHeight and ActaulWidth is zero.
    }

1 个答案:

答案 0 :(得分:1)

ActualWidthActualHeight反映了布局中UI元素的大小。在C#代码中,您只创建了WebView类的实例,但实际上没有将它放在页面的任何位置,因此这些值为零。

相反,当您使用XAML时,不仅创建了WebView类的实例,而且还将此UI元素嵌入到运行应用程序时显示的页面中,因此ActualWidth并且ActualHeight包含该页面上UI元素的实际尺寸。