XAML 带有iFrame的.Net MAUI WebView-窗口高度问题

jecbmhm3  于 2022-12-07  发布在  .NET
关注(0)|答案(1)|浏览(193)

我正在实现一个WebView,其中包含一个指向一个很长页面的链接。在这个很长的页面中,有一个从顶部菜单激活的菜单。作为一个普通的网页,这个底部菜单在窗口的底部打开,但是在应用程序中,我必须滚动到页面的底部才能看到它。我如何才能使这个菜单显示在屏幕的底部,而不是页面的底部呢?下面是代码:

<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         x:Class="Xyz.MainPage">

<Grid ColumnDefinitions="*"
      ColumnSpacing="0"
      RowDefinitions="*"
      RowSpacing="0">
    <ScrollView>
        <VerticalStackLayout
        Spacing="0"
        Padding="0"
        VerticalOptions="Center">
            <WebView Source="https://files.xyz.net/index.html"
                 HorizontalOptions="CenterAndExpand"
                 VerticalOptions="FillAndExpand">
            </WebView>
        </VerticalStackLayout>
    </ScrollView>
</Grid>

HTML页面

<html>
  <head>
    <style>
html,body {height:100%}
        #one2go {
            width: 100% !important
        }
    </style>
  </head>
<body style="margin:0px;padding:0px;overflow:hidden">
<script src="test.js" data-formtarget="_self" data-xyz="357278" data-color="blue" data-language="en" data-width="250" data-height="251" data-border="1" data-hidelogo="1" data-domain="xyz.asia"></script>
</body>
</html>
enyaitl3

enyaitl31#

如果我对您的问题理解正确的话,您可以简单地将它放在StackLayout中而不是Grid/ScrollView中,如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage ...>
    <StackLayout
        VerticalOptions="Fill"
        HorizontalOptions="Fill">
        <WebView 
            VerticalOptions="FillAndExpand"
            HorizontalOptions="FillAndExpand"/>
    </StackLayout>
</ContentPage>

请注意,VerticalOptions/HorizontalOptions非常重要。这将使WebView成为页面上的唯一内容。

相关问题