silverlight
  • data-binding
  • binding
  • silverlight-4.0
  • path
  • 2010-09-02 313 views 1 likes 
    1

    我花在這個所以任何的幫助深表感謝小時:Silverlight的綁定路徑動態

    我有一個DataTemplate它已經設置的ItemsSource內一個TextBlock。我想綁定TextBlock的Text並將Path設置爲代碼隱藏中不同對象的路徑。我試過了我能想到的一切:

    <TextBlock Text="{Binding Path='{Binding ElementName=sendingComboColumn,Path=DisplayMemberPath}'}" /> 
    

    我只是不知道如何動態設置路徑!它必須是通用的,取決於調用哪一列。

    回答

    1

    我終於找到了解決方案!我只是在代碼中創建一個新的DataTemplate並將ListBox.ItemTemplate分配給新的DataTemplate,而不是嘗試動態更改DataTemplate中的路徑:

    public static DataTemplate CreateTemplate(string path) 
         { 
          return (DataTemplate)XamlReader.Load(
           @"<DataTemplate xmlns=""http://schemas.microsoft.com/client/2007""> 
            <StackPanel Orientation='Horizontal'> 
             <CheckBox IsChecked='{Binding}' /> 
             <TextBlock Text='{Binding Path=" + path + @"}'/> 
            </StackPanel> 
            </DataTemplate>" 
           ); 
         } 
        this.listBox.ItemTemplate = CreateTemplate(path); 
    
    相關問題