我的DataGrid:
<DataGrid ItemsSource="{Binding Path=Question.Variations}" AutoGenerateColumns="False"
Height="97" HorizontalAlignment="Left" Margin="7,6,0,0" Name="dataGrid1"
VerticalAlignment="Top" Width="322">
<DataGrid.Columns>
<DataGridTextColumn Header="Variatienr" Binding="{Binding Key}"/>
<DataGridTextColumn Header="# vraagparameters"
Binding="{Binding Value.QuestionParameters.Count}"/>
<DataGridTextColumn Header="# antwoordparameters"
Binding="{Binding Path=((TypedFieldsVariation)Value).Answers.Count}"/>
</DataGrid.Columns>
</DataGrid>
以下列显示除标题之外的任何内容:
<DataGridTextColumn Header="# antwoordparameters"
Binding="{Binding Path=((TypedFieldsVariation)Value).Answers.Count}"/>
我知道这可能是错的,但现在我的问题是如何展示它?
itemssource
为IEnumerable<KeyValuePair<int, Variation>> Variations
Variation
有2个子类,MultipeChoiceVariation
和TypedFieldsVariation
现在我想要属性'Answers',我确信数据网格的itemssource中的所有变体都是TypedFieldsVariations
答案 0 :(得分:2)
如果您丢失了括号并从路径中输入了类型,它应该可以工作:
Path=Value.Answers.Count
如果它没有按预期工作,那么请检查输出窗口是否存在绑定错误,它将为您提供有关出错的线索。只需确保Count
是属性,而不是函数。