Maui 可以配置直线阴影吗?

pab*_*mos 2 xaml shadow maui .net-maui

我\xc2\xb4m 在 .net maui 中开发一个应用程序,我有一个问题,但我没有通过浏览回答自己。\n我正在尝试将阴影应用到边框,并且以下代码完美运行。

\n
   <Border \n    Style="{StaticResource light-theme-border}"\n    Grid.Column="1"\n    Grid.Row="3"\n    Grid.ColumnSpan="7">\n    <Border.Shadow>\n        <Shadow \n                Brush="red"\n                Offset="1,11"\n                Radius="20"\n                Opacity="0.25"/>\n    </Border.Shadow>\n   </Border>\n
Run Code Online (Sandbox Code Playgroud)\n

但是当我直接在边框属性内写入阴影时,它会捕获该属性,但我不知道如何转储[画笔、偏移、半径和不透明度]信息:

\n
    <Border \n        Style="{StaticResource light-theme-border}"\n        Grid.Column="1"\n        Grid.Row="3"\n        Grid.ColumnSpan="7"\n        Shadow="???????????????????????????">\n    </Border>\n
Run Code Online (Sandbox Code Playgroud)\n

Cfu*_*fun 7

然后,您可以将其定义为资源并将其使用(与对Style属性所做的操作相同):

<ContentPage.Resources>
        <ResourceDictionary>
            <Shadow
                x:Key="CommonShadow"
                Brush="red"
                Offset="1,11"
                Radius="20"
                Opacity="0.25"/>
    <Border 
        Style="{StaticResource light-theme-border}"
        Grid.Column="1"
        Grid.Row="3"
        Grid.ColumnSpan="7"
        Shadow="{StaticResource CommonShadow}">
    </Border>
Run Code Online (Sandbox Code Playgroud)

或者将其集成到您现有的风格中Border

<ContentPage.Resources>
        <ResourceDictionary>
    <Style x:Key="light-theme-border" TargetType="Border">
                <Setter Property="WidthRequest" Value="20" />
                <Setter Property="Shadow">
                    <Setter.Value>
                        <Shadow
                            Brush="red"
                            Opacity="1"
                            Radius="50"
                            Offset="20,20" />
                    </Setter.Value>
                </Setter>
            </Style>
    <Border 
        Style="{StaticResource light-theme-border}"
        Grid.Column="1"
        Grid.Row="3"
        Grid.ColumnSpan="7">
    </Border>
Run Code Online (Sandbox Code Playgroud)

Border或者将其作为静态资源集成到您现有的样式中

<ContentPage.Resources>
        <ResourceDictionary>
             <Shadow
                x:Key="CommonShadow"
                Brush="red"
                Offset="1,11"
                Radius="20"
                Opacity="0.25"/>

            <Style x:Key="light-theme-border" TargetType="Border">
                  <Setter Property="WidthRequest" Value="20" />
                  <Setter Property="Shadow" Value="{StaticResource CommonShadow}"/>
            </Style>
        </ResourceDictionary>
</ContentPage.Resources>

    <Border 
        Style="{StaticResource light-theme-border}"
        Grid.Column="1"
        Grid.Row="3"
        Grid.ColumnSpan="7">
    </Border>
Run Code Online (Sandbox Code Playgroud)