Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
绑定到DataGrid WPF的ComboBox值_Wpf_Silverlight_Xaml_Data Binding - Fatal编程技术网

绑定到DataGrid WPF的ComboBox值

绑定到DataGrid WPF的ComboBox值,wpf,silverlight,xaml,data-binding,Wpf,Silverlight,Xaml,Data Binding,我当前有一个组合框,其中包含从数据库绑定的数据: <ComboBox x:Name="bookingComboBox" ItemsSource="{Binding ElementName=bookingDomainDataSource, Path=Data}" Height="20" VerticalAlignment="Top" Margin="387,79,114,0"> <ComboB

我当前有一个组合框,其中包含从数据库绑定的数据:

<ComboBox x:Name="bookingComboBox"
          ItemsSource="{Binding ElementName=bookingDomainDataSource, Path=Data}"
          Height="20"
          VerticalAlignment="Top"
          Margin="387,79,114,0">
    <ComboBox.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal">
                <TextBlock Width="150"
                           Text="{Binding Path=bookingName}" />
                <TextBlock Text="{Binding Path=bookingDate, StringFormat=d MMMM yyyy}"
                           Width="100" />
            </StackPanel>
        </DataTemplate>
    </ComboBox.ItemTemplate>
</ComboBox>

我还有datagrid:

<sdk:DataGrid AutoGenerateColumns="False"
              Height="200"
              HorizontalAlignment="Left"
              ItemsSource="{Binding Data, ElementName=bookingDomainDataSource}"
              Margin="147,132,0,0"
              x:Name="bookingDataGrid"
              RowDetailsVisibilityMode="VisibleWhenSelected"
              VerticalAlignment="Top"
              Width="400">
    <sdk:DataGrid.Columns>
        <sdk:DataGridTextColumn x:Name="bookingIdColumn"
                                Binding="{Binding bookingId, Mode=OneWay}"
                                Header="Booking Id"
                                IsReadOnly="True"
                                Width="SizeToHeader" />
        <sdk:DataGridTextColumn x:Name="bookingNameColumn"
                                Binding="{Binding bookingName}"
                                Header="Booking Name"
                                Width="SizeToHeader" />
        <sdk:DataGridTextColumn x:Name="bookingDateColumn"
                                Binding="{Binding bookingDate}"
                                Header="Booking Date"
                                Width="SizeToHeader" />
        <sdk:DataGridTextColumn x:Name="paymentIdColumn"
                                Binding="{Binding paymentId}"
                                Header="Payment Id"
                                Width="SizeToHeader" />
        <sdk:DataGridTextColumn x:Name="showIdColumn"
                                Binding="{Binding showId}"
                                Header="Show Id"
                                Width="SizeToHeader" />
        <sdk:DataGridTextColumn x:Name="ticketIdColumn"
                                Binding="{Binding ticketId}"
                                Header="Ticket Id"
                                Width="SizeToHeader" />
        <sdk:DataGridTextColumn x:Name="ticketQuantityColumn"
                                Binding="{Binding ticketQuantity}"
                                Header="Ticket Quantity"
                                Width="SizeToHeader" />
        <sdk:DataGridTextColumn x:Name="userIdColumn"
                                Binding="{Binding userId}"
                                Header="User Id"
                                Width="SizeToHeader" />
    </sdk:DataGrid.Columns>
</sdk:DataGrid>

我希望数据网格从组合框更改为行集合中的行

我该怎么做


谢谢

必须将ItemsSource属性设置为集合(IEnumerable)。将ItemsSource设置为非集合对象意味着什么?它不会成为物品的“来源”


执行您要求的操作的最简单方法是将数据网格的ItemsSource绑定到ComboBox的SelectedItem属性。如果希望网格在组合框中显示所选项的子数据,请尝试类似ItemsSource=“{Binding ElementName=bookingComboBox,Path=SelectedItem.child_data_PROPERTY}”的操作。

如果所有控件都绑定到同一源,则应该能够使用以下属性:

IsSynchronizedWithCurrentItem="True"

这应该在组合框和数据网格上都设置。

每当我尝试将该值设置为true时,它都会返回一个错误“Property value is not Valid”,这是怎么回事:
x:FieldModifier=“bookingDateColumn”
?这不应该是
x:Name
?哦,这是一个打字错误,修复回x:Name