WPF Window無邊框窗體陰影效果

設置GlassFrameThickness爲1,若是ResizeMode爲NoResize,則ResizeMode屬性不能直接寫在Window標籤屬性上,要以Style.Setter的方式設置,不然沒有邊框陰影效果express

代碼:ide

<Window x:Class="SunCreate.PACP.Client.UI.GIS.CameraDetailsWin"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:SunCreate.PACP.Client.UI"
        mc:Ignorable="d"
        Title="CameraDetailsWin" Height="780" Width="1200" 
        WindowStyle="None" ShowInTaskbar="False" WindowStartupLocation="CenterScreen" Background="Transparent" 
        Loaded="Window_Loaded">
    <WindowChrome.WindowChrome>
        <WindowChrome CaptionHeight="60"
                      GlassFrameThickness="1"
                      UseAeroCaptionButtons="False"
                      NonClientFrameEdges="None"
                      CornerRadius="0">
        </WindowChrome>
    </WindowChrome.WindowChrome>
    <Window.Resources>
        <ResourceDictionary>
            <!-- Window樣式 -->
            <Style TargetType="Window">
                <!-- ResizeMode屬性不能直接寫在Window標籤屬性上,要以Style.Setter的方式設置,不然沒有邊框陰影效果 -->
                <Setter Property="ResizeMode" Value="NoResize"></Setter>
            </Style>
        </ResourceDictionary>
    </Window.Resources>
    <Grid>
        
    </Grid>
</Window>
    
View Code

上面的代碼彷佛無論用,由於ResizeMode沒設置上,使用下面的代碼能夠實現陰影效果且窗體不可調整大小,但雙擊標題欄能夠最大化spa

代碼:3d

<Window x:Class="SunCreate.PACP.Client.UI.GIS.CameraDetailsWin"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:SunCreate.PACP.Client.UI"
        mc:Ignorable="d"
        Title="CameraDetailsWin" Height="780" Width="1200" Loaded="Window_Loaded"
        WindowStyle="None" ResizeMode="CanResize" ShowInTaskbar="False" WindowStartupLocation="CenterScreen" Background="Transparent">
    <WindowChrome.WindowChrome>
        <WindowChrome CaptionHeight="60"
                      GlassFrameThickness="1"
                      UseAeroCaptionButtons="False"
                      NonClientFrameEdges="None"
                      CornerRadius="0"
                      ResizeBorderThickness="0">
        </WindowChrome>
    </WindowChrome.WindowChrome>
    <Grid>
        
    </Grid>
</Window>
    
View Code
相關文章
相關標籤/搜索