样式不适用于ListView中的StackPanel项目 - Windows Universal

时间:2015-08-31 17:10:26

标签: c# wpf xaml margin datatemplate

我创建了一个带有数据绑定的listview和一个“Itemstemplate”,它带有一个“Datatemplate”,其中我有一个Stackpannel,但样式不适用于stackpannel,stackpannel中的textblocks之间没有空格:

DbSet

那有什么不对?

1 个答案:

答案 0 :(得分:1)

您必须删除data = list(map(ast.literal_eval, recs)) ,因为此样式不会自动应用于TextBlocks

通过在样式上设置x:Key属性,您告诉WPF,当您在特定控件上显式引用它时,您只想使用此样式。

查看this tutorial

<强> EDITED

你还有另外一个问题 - 你正在为你设置样式TextBlocks x:Key="margintextblock"

在这种情况下,您需要做的是从listviewtextblock样式继承StackPanel TextBlock样式

Style="{StaticResource listviewtextblock}"

从TextBlocks中删除样式<StackPanel.Resources> <Style TargetType="TextBlock" BasedOn="{StaticResource listviewtextblock}"> <Setter Property="Margin" Value="10,0,0,0"/> </Style> </StackPanel.Resources>

你的代码应该是这样的

Style="{StaticResource listviewtextblock}"