2016-03-30 22 views
0

Projemde şablon sütunları (açılan kutu) ve veri ızgarası metin sütunları içeren bir veri ızgarası var.Bir veri ızgarası metni sütununa bir şablon sütununda açılan kutunun seçilen öğesinde özellik. Örneğin, ilk sütun, bir combobox içeren bir şablon sütundur ve bir sonraki sütun, normal bir veri ızgarası metin sütundur. Bkz. Metin sütun metnini, şablon sütununda açılan kutunun seçili öğesindeki bir özelliğe nasıl bağlayabilirim.Veri ızgarası şablonu sütun açılan kutusunun seçili öğesi veri ızgarası metin sütununa bağlanıyor

Bu denedim ama bağlayıcı hatayı

<DataGrid 
Grid.Column="0" 
Grid.Row="3" 
Grid.ColumnSpan="9" 
AutoGenerateColumns="False" 
Margin="5" 
CanUserDeleteRows="False" CanUserAddRows="False" 
DataContext="{Binding}" 
IsEnabled="{Binding EnableControls}" 
ItemsSource="{Binding SalesItemCollection}" 
EnableRowVirtualization="False" 
EnableColumnVirtualization="False" 
IsSynchronizedWithCurrentItem="False"> 

<DataGrid.Columns> 

    <DataGridTemplateColumn Header="Batch" Width="*"> 
     <DataGridTemplateColumn.CellTemplate> 
      <DataTemplate> 
       <ComboBox x:Name="comboBox" 
          IsEditable="True" 
          MaxDropDownHeight="125" 
          DisplayMemberPath="BatchName" 
          VerticalAlignment="Stretch" 
          VerticalContentAlignment="Center" 
          IsSynchronizedWithCurrentItem="False" 
          SelectedValuePath="BatchId" 
          SelectedValue="{Binding BatchId}" 
          SelectedItem="{Binding Batch}" 
          ItemsSource="{Binding Path=DataContext.BatchColection, 
          RelativeSource={RelativeSource FindAncestor, AncestorType=DataGrid}}" /> 
      </DataTemplate> 
     </DataGridTemplateColumn.CellTemplate> 

    </DataGridTemplateColumn> 

    <DataGridTextColumn IsReadOnly="True" Header="Expiry " 
         Binding="{Binding ElementName = comboBox, Path=SelectedItem.Expirydate}" /> 


</DataGrid.Columns> 

veriyor ben Binding Source={x:Reference comboBox} için Binding ElementName = comboBox değişen denedim. Ama istisna atıyor. Bunun için bana bir çözüm öneren var mı?

cevap

1

Zaten bu

<DataGridTextColumn IsReadOnly="True" Header="Expiry " 
        Binding="{Binding Source=Batch, Path=Title}" /> 
deneyin Toplu kullanımına Seçilen Öğe bağlayıcı olduğundan
İlgili konular