У меня есть ComboBox определяются следующим образом:Получить текстовое значение из пользовательского ComboBox
<ComboBox Width="200" Height="30" Grid.Column="0" x:Name="ExistingSpeciesComboBox"
ItemsSource="{Binding SpeciesColorCollection}" HorizontalAlignment="Left">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Rectangle Fill="{Binding Path=Brush}" Stroke="Black" StrokeThickness="1" Height="15" Width="30"/>
<w:WTextBlock Text="{Binding Name}" VerticalAlignment="Center"
Foreground="{StaticResource SmallControlForegroundBrush}"/>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
SpeciesColorCollection является ObservableCollection типа ColorObject
Public Class ColorObject
Public Property Name As String
Public Property Brush As Brush
End Class
выпадающий список отображает элементы из коллекции правильно, но моя проблема в том, что когда я пытаюсь получить выделенный текст из ComboBox в MultiBinding, я получаю ColorObject вместо имени. Как мне получить значение «Имя» из WTextBlock в ComboBox? Ниже приведена привязка, которую я использую для моей команды. Конвертер возвращает только строки.
<MultiBinding Converter="{StaticResource mySpeciesSetupConverter}">
<MultiBinding.Bindings>
<Binding ElementName="NewSpeciesName" Path="Text" />
<Binding ElementName="ExistingSpeciesComboBox" Path="Text" />
</MultiBinding.Bindings>
</MultiBinding>
Спасибо, что сделал это. Я знал, что это должно быть что-то простое, но я просто не мог на нее напасть! – user10001110101
@dkirkdrei это здорово, так почему бы вам не принять ответ;) –
Ответ принят! Я пытался, но это заставило меня ждать 7 минут ?? – user10001110101