首页 文章

Xamarin形成带边框的透明元素

提问于
浏览
4

我使用 Frame 在各种元素(Grid,StackLayout和ContentView)上创建边框,现在需要使元素透明;我尝试设置Grid等的不透明度,但当然 Frame 颜色会影响实际的背景颜色 .

<ContentPage BackgroundImage="some_image.png">
  <!-- ... -->
  <Frame BackgroundColor="Gray" Opacity="0.7" Padding="1" Margin="10">
    <Grid BackgroundColor="White" Opacity="0.7" Margin="20">
      <Label Text="..."/>
    </Grid>
  </Frame>
  <!-- ... -->
</ContentPage>

Grid 按预期渲染,但现在Frame灰色背景使白色网格显示为灰色 . 理想情况下,我想要一个带有灰色边框的白色透明网格,这在Xamarin中是否可行?

(我使用共享的Xamarin表单项目定位iOS和Android)

1 回答

  • 4

    您可以将 BackgroundColor 设置为"Transparent"并将 OutlineColor 设置为"Gray":

    <ContentPage BackgroundImage="some_image.png">
      <!-- ... -->
      <Frame BackgroundColor="Transparent" OutlineColor="Gray" Opacity="0.7" Padding="1" Margin="10">
        <Grid BackgroundColor="White" Opacity="0.7" Margin="20">
          <Label Text="..."/>
        </Grid>
      </Frame>
      <!-- ... -->
    </ContentPage>
    

相关问题