Поле списка полей комбинированного списка и привязки их WPF

У меня есть ситуация, где у меня есть поле списка полей комбинированного списка, главным образом это связывает с объектом моста, таким образом, объект содержит внешние ключи. То, что я должен сделать, - то, что я должен связать дисплей комбинаций к соответствующим объектам и их участников значения к значениям внешнего ключа в объекте моста, с которым я связываю поле списка.

код, который я имею теперь:

<ListBox Name="lstServices" ScrollViewer.HorizontalScrollBarVisibility="Disabled" HorizontalContentAlignment="Stretch">
                     <ListBox.ItemTemplate>
                        <DataTemplate>
                            <Grid Margin="2" DataContext="{Binding ElementName=wndMain,Path=DataContext}">
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="*"/>
                                    <ColumnDefinition Width="*"/>
                                </Grid.ColumnDefinitions>

                                <ComboBox Name="cmbService" SelectedIndex="0" DisplayMemberPath="Name"  SelectedValuePath="{Binding RelativeSource={RelativeSource Mode=TemplatedParent}, Path=FK_ServiceID}" ItemsSource="{Binding Path=AllServices}" Grid.Column="0"></ComboBox>
                                <ComboBox Name="cmbService_Role" Margin="2,0,0,0" SelectedValuePath="{Binding Path=FK_ServiceRoleID}" DisplayMemberPath="Name" ItemsSource="{Binding Path=AllService_Roles}" Grid.Column="1"></ComboBox>
                            </Grid>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>

Мне могло удаться отобразить значения, в которых я нуждался, но так как контекст элемента списка изменился, я не могу добраться до поля списка itemSource.

Любой справкой является ценивший Bishoy

1
задан Bashawy 13 May 2010 в 11:16
поделиться

1 ответ

Я понял :D , вот как это должно происходить

<ListBox Name="lstServices" ScrollViewer.HorizontalScrollBarVisibility="Disabled" HorizontalContentAlignment="Stretch" ItemsSource="{Binding MemberServices}">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                            <Grid >
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="*" />
                                    <ColumnDefinition Width="*" />
                                </Grid.ColumnDefinitions>
                                <ComboBox Name="cmbService" SelectedValue="{Binding FK_ServiceID,Mode=TwoWay}" ItemsSource="{Binding ElementName=wndMain, Path=DataContext.AllServices,Mode=OneTime}"  SelectedValuePath="ID" DisplayMemberPath="Name"  Grid.Column="0" ></ComboBox>
                                <ComboBox Name="cmbService_Role" SelectedValue="{Binding FK_ServiceRoleID,Mode=TwoWay}" ItemsSource="{Binding ElementName=wndMain, Path=DataContext.AllService_Roles,Mode=OneTime}"  SelectedValuePath="ID" DisplayMemberPath="Name"  Grid.Column="1" Margin="2,0,0,0"></ComboBox>
                            </Grid>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
2
ответ дан 3 September 2019 в 00:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: