Я нашел this tutorial, что именно то, что я пытаюсь сделать, но учебник не объясняет, как загружать данные из кода в combobox. любая идея, как я могу добиться этого?Привязать данные к многоколоновому datagrid-combobox wpf
В принципе, я хочу, чтобы многоколонный combobox в datagrid, и когда пользователь выбирает элемент, он отображает только одно из значений, а не то, и другое.
<DataGrid x:Name="DGOrders" Margin="30" AutoGenerateColumns="False" >
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding OrderID}" Header="Order ID" />
<DataGridTemplateColumn Header="User" Width="200">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox SelectedValue="{Binding UserID}" SelectedValuePath="UserID" DisplayMemberPath="CompanyName" HorizontalContentAlignment="Stretch" ItemsSource="{Binding}" >
<ComboBox.ItemContainerStyle>
<Style TargetType="{x:Type ComboBoxItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Margin="5" Grid.Column="0" Text="{Binding UserID}"/>
<TextBlock Margin="5" Grid.Column="1" Text="{Binding CompanyName}"/>
<TextBlock Margin="5" Grid.Column="2" Text="{Binding UserName}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ComboBox.ItemContainerStyle>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
благодарит за ваше время и nswer. Я попробовал то, что вы предложили, и получите следующую ошибку: Ошибка Перегрузка для метода 'OnPropertyChanged' принимает 0 аргумент ' – Gisiota
В коде для реализации интерфейса INotifyPropertyChanged – Usama
Спасибо, что сработали. Из любопытства, будет ли этот метод работать, если datacontext был из набора данных? – Gisiota