用户控件后台隐藏子控件

本文关键字:控件 隐藏 后台 用户 | 更新日期: 2023-09-27 18:12:32

设置了用户控件的背景,但是该背景隐藏了所包含的控件。如何解决这个问题?

<UserControl x:Class="PL_Wpf.CustomControls.Conditioner"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
         xmlns:local="clr-namespace:PL_Wpf.CustomControls"
         mc:Ignorable="d" Height="166" Width="349">
<UserControl.Background>
    <ImageBrush ImageSource="Conditioner.png" Stretch="None"/>
</UserControl.Background>
<Grid >
    <ComboBox  x:Name="combo1" HorizontalAlignment="Right" Width="57" Margin="0,68,53.206,70"   />
    <ToggleButton  x:Name="ToggleSwitch" Height="50"  Click="ToggleSwitch_Click" Margin="97.205,55,115.206,61" d:LayoutOverrides="Width"   >
        <ToggleButton.Style>
            <Style TargetType="{x:Type ToggleButton}">
                <Style.Triggers>
                    <Trigger  Property="IsChecked" Value="True">
                        <Setter Property="Content">
                            <Setter.Value>
                                <Image Source="../Pics/switch_on.png" />
                            </Setter.Value>
                        </Setter>
                    </Trigger>
                    <Trigger Property="IsChecked" Value="False">
                        <Setter Property="Content">
                            <Setter.Value>
                                <Image Source="../Pics/switch_off.png" />
                            </Setter.Value>
                        </Setter>
                    </Trigger>
                </Style.Triggers>
            </Style>
        </ToggleButton.Style>
    </ToggleButton>
</Grid>

jsfiddle.net/wgfw1Ld7/

用户控件后台隐藏子控件

在设计图面上放置时,控件上的Margin属性会自动设置。如果在Canvas上调整项,这个特性可能是需要的,但是在处理大多数Xaml控件放置时,这个特性大多是令人烦恼的。

删除Margin属性以查看控件在网格上的正确位置