2011-06-21 157 views
0

我想要一個組合框,顯示具有多個屬性的項目,顯示每個項目的屬性的列標題。這是我目前正在使用的控制模板。將列標題添加到這些列表的最佳方式是什麼?帶WPF組合框的多列項目

我的組合框設置爲的ItemsSource = 「{綁定米}」

<ControlTemplate TargetType="ComboBoxItem"> 
    <Grid HorizontalAlignment="Stretch" TextElement.FontWeight="Normal"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="85" /> 
      <ColumnDefinition Width="Auto" /> 
      <ColumnDefinition Width="Auto" SharedSizeGroup="Status" /> 
      <ColumnDefinition Width="Auto" /> 
      <ColumnDefinition Width="Auto" SharedSizeGroup="ExpectMfactor" /> 
     </Grid.ColumnDefinitions> 
     <TextBlock Grid.Column="0" Text="{Binding Path=MtrNo}" /> 
     <Rectangle Grid.Column="1" Width="1" Fill="Black" /> 
     <TextBlock Grid.Column="2" Text="{Binding Path=Status}" Margin="5,0,5,0" /> 
     <Rectangle Grid.Column="3" Width="1" Fill="Black" /> 
     <TextBlock Grid.Column="4" Text="{Binding Path=ExpectMfactor}" Margin="5,0,5,0" /> 
    </Grid> 
</ControlTemplate> 
+0

做到這一點假設您希望列標題出現一次,位於整個項目列表的上方,則無法僅通過重新對這些項目進行模板化。請參閱右側欄中的相關問題以獲取多種方法。 –

+0

可能重複[WPF多標題組合框與標頭?](http://stackoverflow.com/questions/5807899/wpf-multiple-item-combo-box-with-headers) –

回答

1

你不能用項目模板

,最好使用DataGridListView內部ComboBox

+0

這將顯示標題上面*每個別項目*。 –