XMAL 元素的宽高计算和资源的路径

1、在 xaml 中,当一个元素刚被创建时,不能得到它所需要的占用的宽和高,因为此时元素还没有调用 UIElement. Measure(Size availableSize) 方法,该方法是在构图线程中计算元素的大小的 ,方法的具体描述 :

      // 更新 UIElement 的 DesiredSize。实现其布局子级的自定义布局的对象通常从自己的 MeasureOverride 实现调用此方法以形成递归布局更新。
       //   availableSize:   父对象可以为子对象分配的可用空间。子对象可以请求大于可用空间的空间;如果该特定容器中允许滚动或其他调整大小行为,则提供的大小可以适应此空间。
       public void Measure(Size availableSize);

在创建元素时就想获得其大小的方法:

           TextBlock txt = new TextBlock 
            {
                Text = "windows phone 手机",
                FontSize = 40
            };

           //手动调用该元素的方法
           //public const double PositiveInfinity = 1.0 / 0.0;
           //double.PositiveInfinity : 代表的是正无穷大。这个数是一个常数
            txt.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity));
                       
          Size txtSize = txt.DesiredSize; //结果:(370.0,48.0)

            txtSize = new Size(txt.ActualWidth, txt.ActualHeight); //结果:(370.0,48.0)


            txtSize = new Size(txt.Width, txt.Height);// 结果 :(NaN, NaN)

2、今天在使用 WebView 导航到本地的 html 文件时,总是不能正确加载, 使用的 方法是 :

MyIE.Navigate(new Uri("ms-appx:///Assets/default.html"));

正确的方法是:

MyIE.Navigate(new Uri("ms-appx-web:///Assets/default.html"));
原文地址:https://www.cnblogs.com/hebeiDGL/p/2746454.html