Привязать выбранный элемент к нескольким комбинированным спискам c # - PullRequest
0 голосов
/ 20 ноября 2018

Это то, что я пытаюсь выполнить, город - это комбинированный список

Итак, у меня есть блок данных с 3 разными клиентами, у класса клиента есть Имя, Имя, Адрес, мобильный телефон и почтовый индекс.У меня есть другой класс City, который содержит ZipCode и Name (из почтового индекса).Так что я перебрал все это, чтобы получить список со строками всех имен почтовых индексов.Но я не могу поместить его на выбранный элемент в выпадающем списке, потому что это сетка данных и есть 3 различных выпадающих списка.Источник предметов уже установлен в выпадающих списках, но я понятия не имею, как мне нужно будет вводить выбранный элемент в эти выпадающие списки.

Это то, что я получил сейчас, без выбранного элемента

Вот мой код xaml:

<DataGrid AutoGenerateColumns="False" Name="CustomersDataGrid" HorizontalAlignment="Center" VerticalAlignment="Top" 
                  CanUserAddRows="False" Width="auto" Height="auto" Grid.Row="1" Grid.Column="1">
            <DataGrid.Columns>
                <DataGridTextColumn Binding="{Binding Name}" Header="Name" />
                <DataGridTextColumn Binding="{Binding FirstName}" Header="Firstname" />
                <DataGridTextColumn Binding="{Binding Address}" Header="Address" />
                <DataGridComboBoxColumn  DisplayMemberPath="Name"  Header="City" x:Name="CityComboBoxColumn"/>
                <DataGridTextColumn Binding="{Binding CellPhone}" x:Name="CellPhone" Header="Cellphone" />
            </DataGrid.Columns>
        </DataGrid>

Вот код моего компонента инициализации:

 _allCities = cityRepository.GetAll();
           _allCustomers = customerRepository.GetAll();
            _cities = new List<string>();
            CustomersDataGrid.ItemsSource = _allCustomers;
            for(int i = 0; i < _allCustomers.Count; i++)
            {
                for (int j = 0; j < _allCities.Count; j++)
                {
                    if(_allCustomers[i].ZipCode == _allCities[j].ZipCode)
                    {
                        _cities.Add(_allCities[j].Name);
                    }
                }
            }
            {

            }
            CityComboBoxColumn.ItemsSource = _allCities;
...