2013-09-07 36 views
5

Tôi có ComboBox sau đây trong WPF. Tôi biết rằng tôi có thể thêm tùy chọn ALL với CompositeCollection, nhưng tôi không biết làm thế nào. Nó sẽ là tuyệt vời nếu ai đó giúp tôi với một hướng dẫn ngắn.Cách thêm tùy chọn "Tất cả" vào hộp tổ hợp trong WPF có ràng buộc từ Cơ sở dữ liệu

<ComboBox SelectionChanged="ComboBoxOperatingPoints_SelectionChanged" 
      x:Name="ComboBoxOperatingPoints" 
      DropDownOpened="ComboBoxOperatingPoints_DropDownOpened_1" 
      FontSize="30" 
      HorizontalAlignment="Right" 
      Margin="40,40,0,0" 
      VerticalAlignment="Top" 
      Width="200" 
      Height="50" 
      IsSynchronizedWithCurrentItem="True" 
      ItemsSource="{Binding OperatingPoints}" 
      DisplayMemberPath="name" 
      SelectedValue="{Binding OperatingPointID,UpdateSourceTrigger=PropertyChanged,TargetNullValue=''}" 
      SelectedValuePath="operating_point_id"> 
</ComboBox> 
+0

tải điều khiển này người dùng: http://www.codeproject.com/Articles/563862/Multi-Select-ComboBox-in-WPF –

+1

@eranotzap Xin lỗi, tôi không cần sử dụng điều khiển tùy chỉnh cho công việc này. Như tôi biết nó có thể với một CompositeCollection và nếu có một cách để làm điều này với nó tôi muốn tìm hiểu nó. –

Trả lời

8

Hãy thử điều này (msdn):

<ComboBox x:Name="ComboBoxOperatingPoints" 
      SelectionChanged="ComboBoxOperatingPoints_SelectionChanged" 
      Width="200" Height="50" 
      IsSynchronizedWithCurrentItem="True" 
      DisplayMemberPath="name"   
      SelectedValuePath="operating_point_id"> 
    <ComboBox.Resources> 
     <CollectionViewSource x:Key="comboBoxSource" Source="{Binding Path=OperatingPoints}" /> 
    </ComboBox.Resources> 
    <ComboBox.ItemsSource> 
     <CompositeCollection> 
      <local:OpPoint name="all" operating_point_id="-1" /> 
      <CollectionContainer Collection="{Binding Source={StaticResource comboBoxSource}}" /> 
     </CompositeCollection> 
    </ComboBox.ItemsSource> 
</ComboBox> 
+0

cảm ơn nó hoạt động tốt. –

Các vấn đề liên quan