2017-09-14 59 views
0

我試圖綁定Syncfusion TaskBar ObservableCollection,並有一個TaskBarItems的列表。 使用代碼隱藏,項目被添加像這樣:Syncfusion任務欄綁定

TaskBar taskBar = new TaskBar(); 
TaskBarItem taskBarItem1 = new TaskBarItem(); 
taskBarItem1.Header = "TaskBarItem1"; 
TextBlock textBlock1 = new TextBlock(); 
textBlock1.Text = "This TaskBar that have a TaskBarItem."; 
taskBarItem1.Items.Add(textBlock1);   
taskBar.Items.Add(taskBarItem1); 

此XAML:

<syncfusion:TaskBar Grid.Row="1" 
       VerticalAlignment="Stretch" 
       ItemsSource="{Binding Path=DataContext.Categories, RelativeSource={RelativeSource AncestorType=localV:MainWindow}}"> 
    <syncfusion:TaskBar.ItemTemplate> 
     <DataTemplate> 
      <TextBlock Text="{Binding Path=FirstName}"/> 
     </DataTemplate> 
    </syncfusion:TaskBar.ItemTemplate> 
</syncfusion:TaskBar> 

給我TaskBarItems在任何TaskBarItem的擴張區列表,表頭顯示名字,並沒有什麼。我如何使適當的綁定/模板在可擴展區域中看到標題和數據?

+0

你能爲你正在使用的應用程序任務欄控制的目的是什麼解釋?所以我們可能有更好的主意,建議基於它的解決方案。 注意:我爲Syncfusion工作。 – user2700767

回答

1

我希望你能定義一個ItemContainerStyleContentTemplate

<syncfusion:TaskBar Grid.Row="1" 
       VerticalAlignment="Stretch" 
       ItemsSource="{Binding Path=DataContext.Categories, RelativeSource={RelativeSource AncestorType=localV:MainWindow}}"> 
    <syncfusion:TaskBar.ItemContainerStyle> 
     <Style TargetType="syncfusion:TaskBarItem"> 
      <Setter Property="Header" Value="{Binding Path=FirstName}" /> 
      <Setter Property="Content"> 
       <Setter.Value> 
        <TextBlock>This TaskBar that have a TaskBarItem</TextBlock> 
       </Setter.Value> 
      </Setter> 
     </Style> 
    </syncfusion:TaskBar.ItemContainerStyle> 
</syncfusion:TaskBar> 
+0

它做了一半的工作,綁定標題。但是TaskBarItem不是一個Content控件 - 它沒有'Content'屬性,它使用Children來代替。是否可以綁定Children,而不創建DependencyProperty? –