添加一个Gird
Gird中添加一个label,位置你自己设;
Grid的Background设为该图片,ImageBrush,你自己查查吧;
至于margin随时变化,怎么个变法,你没说清,必要时可以后台代码 *** 作。
直接定义在控件中,如下:
<Label Width="200" Height="100">
<Label.Content>
<DockPanel>
<Image Source="logo.png" Width="20" Height="20" DockPanel.Dock="Left"/>
<TextBlock Text="33333333333" DockPanel.Dock="Right" />
</DockPanel>
</Label.Content>
</Label>
在样式中定义如下:
<Style x:Key="LabelStyle1" TargetType="{x:Type Label}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Label}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true">
<DockPanel>
<Image Source="logo.png" Width="20" Height="20" DockPanel.Dock="Left"/>
<ContentPresenter DockPanel.Dock="Right" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</DockPanel>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
1.使用绝对坐标
<Canvas><Label Content="..." Width="60" Height="25" Canvas.Left="50" Canvas.Top="50" />
</Canvas>
2.使用 Grid
<Grid><Grid.ColumnDefinitions>
<ColumnDefinition Width="50" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="50" />
<RowDefinition />
</Grid.RowDefinitions>
<Label Content="..." Width="60" Height="25" Grid.Row="1" Grid.Column="1" HorizontalAlignment="Left" VerticalAlignment="Top" />
</Grid>
方法多多
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)