我想为一个标签定义一个数据模板。这可能吗?由于找不到有用的东西,所以我定义了一个控件模板并试图让事情顺利进行。不幸的是,当我按如下方式绑定两个项目时,即使具有给定参数的对象已成功绑定到后面代码的标签,我也会得到标签不显示任何内容。请帮忙!WPF标签DataTemplate
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Label">
<Border>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
</Grid.ColumnDefinitions>
<TextBlock Background="Green" Text="{Binding TableName}" Grid.Column="0"></TextBlock>
<TextBlock Background="Red" Text="{Binding ColumnName}" Grid.Column="1"></TextBlock>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
编辑:在window.resources全XAML中的要求
<Window.Resources>
<Style x:Key="myLabelTemplate" TargetType="Label">
<!--<Setter Property="Background" Value="DarkKhaki"></Setter>
<Setter Property="Foreground" Value="White"></Setter>-->
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Label">
<Border>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
</Grid.ColumnDefinitions>
<!-- <TextBlock Background="Green" Text="{Binding TableName}" Grid.Column="0"></TextBlock>
<TextBlock Background="Red" Text="{Binding ColumnName}" Grid.Column="1"></TextBlock>-->
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- <ControlTemplate TargetType="Label" x:Key="tablelLabel">
<Grid>
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="5" CornerRadius="5">
<Border.Background>
<SolidColorBrush Color="#50000000"></SolidColorBrush>
</Border.Background>
</Border>
<Grid>
<Grid.Background>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Color="Transparent" Offset="0" />
<GradientStop Color="Black" Offset="1" />
<GradientStop Color="Transparent" Offset="1" />
</LinearGradientBrush>
</Grid.Background>
</Grid>
</Grid>
</ControlTemplate> -->
<ControlTemplate TargetType="Label" x:Key="generalLabel">
<Grid>
<Border BorderBrush="#34B7AEAE" BorderThickness="3" CornerRadius="5">
</Border>
</Grid>
</ControlTemplate>
</Window.Resources>
什么是表名和列名在绑定?你使用的是对象数据源绑定吗? – 2011-03-17 11:32:39
嗨Mamta,你是对的。我将这两个对象绑定为属性。 – 2011-03-17 11:37:22
请添加完整的xaml – 2011-03-17 11:57:45