我有一个绑定到MyStaff类型对象的数据网格。除了其他属性之外,MyStaff还包含一个名为LookupID的列。现在,在我的ViewModel中,我有一个名为Lookups的集合,其中包含每个LookupID的描述。
我有一个模板列,在CellEdit模板中的Cell Template和Combobox中有一个Textblock。如何绑定Textblock,以便它根据LookupID从ComboBox中删除描述。
我知道如果Textblock和ComboBox的datacontext都很简单,那将会很简单,但事实并非如此。
我试过这个,但这不起作用。有什么建议?还将欣赏有关如何在Silverlight中为不同控件最佳使用不同数据上下文的任何信息。为此,我添加了一个指向ViewModel类的静态资源。
<sdk:DataGridTemplateColumn Header="Action Point"
Width="500"
CanUserReorder="False"
HeaderStyle="{StaticResource dthFull2}"
IsReadOnly="False">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock
Text="{Binding ElementName=LookupList,
Path=SelectedItem.Description}"
MinHeight="24"
VerticalAlignment="Top"
Padding="2"
TextTrimming="WordEllipsis"/>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
<sdk:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<my:AutoCompleteComboBox x:Name="LookupList"
FilterMode="Custom" Margin="2,0,0,0"
SelectedValue="{Binding LookupID, Mode=TwoWay}"
SelectedValuePath="LookupID"
ItemsSource="{Binding Path=AnalysisLookupList.Values,
Source={StaticResource ViewModel}}"/>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellEditingTemplate>
</sdk:DataGridTemplateColumn>