2010-11-02 49 views
0

我有一個datagrid,其中一列的標題我想有一個下拉菜單中的數據過濾。問題是具有該下拉列表中值的datacontext位於usercontrol的viewmodel而不是datagrids itemssource中,因此該列表似乎無法用於下拉菜單。Silverlight的數據綁定到父項的父項datacontext中的項目源

   <sdk:DataGridTemplateColumn.HeaderStyle> 
        <Style TargetType="sdk:DataGridColumnHeader"> 
         <Setter Property="ContentTemplate"> 
          <Setter.Value> 
           <DataTemplate> 
            <StackPanel Orientation="Horizontal"> 
             <TextBlock Text="Assignee" /> 
             <ComboBox x:Name="cboAttorneyHdr" ItemsSource="{Binding Path=Attorneys}" 
                Margin="3,0,0,0" SelectedItem="{Binding Path=SelectedAttorney, Mode=TwoWay}" /> 
            </StackPanel> 
           </DataTemplate> 
          </Setter.Value> 
         </Setter> 
        </Style> 
       </sdk:DataGridTemplateColumn.HeaderStyle> 

我發現使用WPF相對源,這似乎是問同樣的事情,但似乎這並不爲Silverlight工作的例子。我已經嘗試在後面的代碼中手動設置,但組合框似乎在那裏可用!我解決這個問題找到

回答

0

的一種方法是使用一些helper詳細的here - 它只是可能的實現方式之一,但它相當於與AncestorLevel/AncestorType這仍然是不SL4可仿效WPF RelativeSourceBinding。或者你可以嘗試google'silverlight combobox in datagrid'以獲得更多解決方法,我敢肯定你可以想象這是一個很常見的問題:)

相關問題