我使用按钮样式,数据模板,并且显示文本(我的表对象的名称和数字属性)有问题。
这是xaml:
<Style x:Key="btnTable" TargetType="{x:Type Button}" >
<Setter Property="Background" Value="Transparent" />
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate DataType="{x:Type my:Tables}">
<Grid>
<Image VerticalAlignment="Center" Source="/Images/Ico/table-40x40.png" />
<TextBlock Text="{Binding Path=Naziv}" />
<Ellipse Canvas.Top="30" Canvas.Left="30" Fill="#FF6A4E8C" />
<TextBlock Text="{Binding Number}" />
</Grid>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
然后,在.cs中,我创建了这样的按钮:
Button b = new Button();
Style myStyle = (Style)Resources["btnTable"];
b.Style = myStyle;
b.DataContext = myTableItem;
如果我测试按钮单击事件,它在DataContext属性中有有效的Table对象。
我试过替换Binding Path width Binding Path = DataContext.Name,添加RelativeSource = Self,但没有任何帮助。
此外,我尝试使用ItemsControl创建按钮,但问题相同。
答案 0 :(得分:0)
b.Content = myTableItem;
它是ContentTemplate
。它是Content
的模板。