相关疑难解决方法(0)

如何制作圆角边框的内容也是圆角的?

我有一个带有圆角的边框元素,包含一个3x3网格.网格的角落伸出边界.我该如何解决这个问题?我尝试使用ClipToBounds但没有得到任何结果.谢谢你的帮助

wpf

51
推荐指数
5
解决办法
2万
查看次数

如何在具有圆角半径的边框内设置控件的样式

我有一个简单的窗口,包含一个带有圆角半径的外边框和一个带背景的内边框.边框基本上只是我想放置在圆角外边框内的任何类型内容的占位符.

<Window x:Class="TestRunner.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525" AllowsTransparency="True" 
        WindowStyle="None" Background="{x:Null}" >
    <Border BorderThickness="2" BorderBrush="Black" CornerRadius="8"  >     
           <Border Background="White">

           </Border>
    </Border>
</Window>
Run Code Online (Sandbox Code Playgroud)

问题是内部控件没有继承圆角,所以它绘制在圆角的顶部,如下所示:

坏角渲染

如何调整外部控件,因此内部控件不会尝试在圆角上绘制.

在内部控件上设置圆角不是一个可行的选项,因为它会导致角半径的可怕重复.

wpf

7
推荐指数
1
解决办法
6083
查看次数

在WPF中剪切边框

我需要创建一个圆形ProgressBar模板.

ControlTemplate:

<ControlTemplate TargetType="{x:Type ProgressBar}">
   <Grid x:Name="TemplateRoot" SnapsToDevicePixels="true">                      
     <Rectangle x:Name="PART_Track" Margin="1" Fill="White" />

     <Border x:Name="PART_Indicator" HorizontalAlignment="Left" Margin="1"  >
        <Grid x:Name="Foreground" >
            <Rectangle x:Name="Indicator" Fill="{TemplateBinding Background}" />
            <Grid x:Name="Animation" ClipToBounds="true" >
               <Rectangle x:Name="PART_GlowRect" Fill="#FF86C7EB" 
                          HorizontalAlignment="Left" Margin="-100,0,0,0" Width="100"/>
            </Grid>                             
        </Grid>                                                             
     </Border>

     <Border x:Name="roundBorder" BorderBrush="{TemplateBinding BorderBrush}"
             BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="10" />
     <TextBlock />

  </Grid>
</ControlTemplate>
Run Code Online (Sandbox Code Playgroud)

这导致:

不正确的剪辑的图像

PART_Indicator左边的LightBlue矩形在哪里(它的宽度在ProgressBar控件内部设置,如此处所示,值为20)和roundBorder.

我需要的是PART_Indicator剪辑它roundBorder,导致类似于:

所需剪辑的图像

wpf clipping clip opacitymask

6
推荐指数
2
解决办法
7626
查看次数

标签 统计

wpf ×3

clip ×1

clipping ×1

opacitymask ×1