2011-04-20 50 views
2

我的DataGrid:WPF的DataGrid结合的IEnumerable <KeyValuePair <INT,CustomType >>

<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}"/> 

我知道这可能是错误的,但现在我的问题是如何显示它?

itemssourceIEnumerable<KeyValuePair<int, Variation>> Variations

Variation有2个亚类,MultipeChoiceVariationTypedFieldsVariation

现在我想的财产“答案”,我敢肯定的是,在所有的ItemsSource变化为DataGrid是TypedFieldsVariations

回答

2

如果您丢失支架并从路径中输入类型,它应该工作:

Path=Value.Answers.Count 

如果不符合您的预期,请检查输出窗口中的绑定错误,它会为您提供有关出错的线索。只要确保Count是一个属性,而不是一个函数。

+0

谢谢,它的工作 – Stef 2011-04-20 13:19:40

+2

@Stef - 如果你对slugster的回答感到满意,点击答案左边的“tick”标记为“Accepted”。这会奖励狙击手**和**你的一些声望点,并向任何人表明这是*正确*答案。 *(您可能还想考虑在其他一些问题上做同样的事情,因为人们不愿意回答未接受许多/任何答案的用户的问题)* =) – Rob 2011-04-20 13:31:15

相关问题