0

別のWPFの質問...

<UserControl x:Class="TKEApp.Components.UserControls.ButtonControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Grid Background="Black">
        <TextBlock Foreground="White" Background="Brown" Name="lblCaption" TextAlignment="Center"></TextBlock>
    </Grid>
</UserControl>

アプリケーション コードのどこかにこのコントロールのインスタンスがあり、プログラムで角を丸くする必要があります。これは可能ですか?

4

4 に答える 4

2

長方形のRadiusXとRadiusYを使用して、丸みを帯びた角を作成することもできます。

これをチェックしてください、これが役立つことを願っています!!

于 2010-04-08T18:23:18.147 に答える
2
<UserControl x:Class="TKEApp.Components.UserControls.ButtonControl" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Background="Transparent"> 
<Border x:Name="border"  Background="Black" BorderThickness="5" BorderBrush="Yellow"  > 
    <TextBlock Foreground="White" Background="Brown" Name="lblCaption" TextAlignment="Center"></TextBlock> 
</Border> 

まず、FindName メソッドを使用してユーザー コントロールを見つけ、

    Border brd=usercontrol.FindName("border") as Border;brd.CornerRadius=new CornerRadius(5);
于 2010-04-08T16:54:06.903 に答える
1

Border を使用して角を丸くする必要があるため、次のようにすることができます。

<UserControl x:Class="TKEApp.Components.UserControls.ButtonControl"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Border x:Name="border" Background="Black">
        <TextBlock Foreground="White" Background="Brown" Name="lblCaption" TextAlignment="Center"></TextBlock>
    </Border>
</UserControl>

次に、UserControl にプロパティを追加します。

public int BorderRadius
{
    get { return border.CornerRadius; }
    set { border.CornerRadius = value; }
}

これにより、境界線の CornerRadius をコードから設定できます。

于 2010-04-08T16:31:36.817 に答える