亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在圖像控件上添加單個圓角

如何在圖像控件上添加單個圓角

C#
守著一只汪 2022-09-04 16:52:37
我在如何單獨設置圖像控件(或窗口控件內的任何控件)的角時遇到問題。使用標簽在外部邊框內添加另一個像素或邊框,這與我想要的相反 - 外部邊框和內部邊框應該在重疊的地方合并。<Border>我嘗試過,這確實給了我個人的角落尺寸。但是,它在外部邊框下添加了另一層邊框 - 我寧愿它與外層重疊/合并,以便我保持其厚度大小。然而,嘗試控制并不能讓我自由地修改各個角落。<Image.Clip><Image>代碼結果 A下面的代碼正在使用下控制,它產生上述結果:<Image.Clip><Image><Border CornerRadius="10" BorderBrush="White" BorderThickness="1">    <Canvas Background="Transparent">        <!--Acrylic Background-->        <Rectangle            Fill="White" Opacity="0.4"            Height="400" Width="600">            <Rectangle.Clip>                <RectangleGeometry Rect="0,0,600,400" RadiusX="9" RadiusY="9" />            </Rectangle.Clip>        </Rectangle>        <Image Height="200" Width="400" Source="D:\_\Downloads\shutterstock_389224732-1200x627.jpg" RenderTransformOrigin="0.5,0.5" Canvas.Left="-100" Canvas.Top="100" Stretch="Fill">            <Image.Clip>                <RectangleGeometry Rect="0,0,400,200" RadiusX="10" RadiusY="10" />            </Image.Clip>            <Image.RenderTransform>                <TransformGroup>                    <RotateTransform Angle="90"/>                </TransformGroup>            </Image.RenderTransform>        </Image>    </Canvas></Border>代碼結果 B下面的代碼使用環繞控件(例如),它產生上述結果:<Border CornerRadius="10" BorderBrush="White" BorderThickness="1">    <Canvas Background="Transparent">        <!--Acrylic Background-->        <Rectangle            Fill="White" Opacity="0.4"            Height="400" Width="600">            <Rectangle.Clip>                <RectangleGeometry Rect="0,0,600,400" RadiusX="9" RadiusY="9" />            </Rectangle.Clip>        </Rectangle>        <Border CornerRadius="9,0,0,9" BorderBrush="Red" BorderThickness="1">            <Canvas Height="398" Width="198">            </Canvas>        </Border>    </Canvas></Border>請注意下面代碼 A 和 B 的縮放結果:它顯示 會自動舍入所有四個角(左上角、右上角、左下角、右下角),而無需添加額外的邊框像素。雖然我可以自由地手動選擇要舍入的角(左上角,左下角),但它增加了另一個邊框像素(如您所見的白色和紅色像素)。<Image.Clip><Border>我正在尋找的功能,但可以自由地手動選擇要剪輯的角,同時也不會添加額外的角像素,因為我試圖實現以下UI:<Image.Clip>
查看完整描述

1 回答

?
長風秋雁

TA貢獻1757條經驗 獲得超7個贊

 <Grid

        Width="400"

        Height="600"

        Margin="0,0,0,0"

        HorizontalAlignment="Left"

        VerticalAlignment="Top">


        <!--  Add rounded corners here  -->

        <Border

            Name="Mask"

            Grid.RowSpan="2"

            Margin="-5"

            Background="Black"

            CornerRadius="18 0 0 18" />


        <!--  Image  -->

        <Grid Grid.RowSpan="2">

            <Grid.OpacityMask>

                <VisualBrush Visual="{Binding ElementName=Mask}" />

            </Grid.OpacityMask>


            <Image

                Margin="-5"

                Source="{StaticResource UsmanImageSource}"

                Stretch="UniformToFill" />

        </Grid>


    </Grid>


查看完整回答
反對 回復 2022-09-04
  • 1 回答
  • 0 關注
  • 114 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號