-1
我想創建一個可定製的ListBox,從某種意義上說,我希望在運行時選擇顯示綁定集合中的哪些項目。就像:以編程方式將DataTemplate插入另一個DataTemplate
<CustomizedListBox Format="[Name][Age]"/>
我有一個ItemTemplateSelector,它可以很好地生成一個For循環中的內容。但現在的故事是,我想爲XAML中列表的不同部分預定義DataTemplates,然後將它們合併到ItemTemplateSelector中。所以我的目標是要有這些定義:
<DataTemplate x:Key="Name">
<TextBlock Text="{Binding Name, StringFormat='Name: {0}'}"/>
</DataTemplate>
<DataTemplate x:Key="Age">
<TextBlock Text="{Binding Age}" HorizontalAlignment="Right"/>
</DataTemplate>
然後以編程方式將它們組合。
我的問題是,在XAML中生成的數據模板的VisualTree是空 - 顯然,WPF「使用不同的機制」。我無法使用LoadContent - 因爲我不想實例化模板。
是我想要的嗎?
我也許不明白你的問題。你爲什麼不爲你的數據類型創建一個DataTemplate,它包含兩個引用你的Name和Age DataTemplates的ContentControls?這聽起來是你試圖對付框架而不是使用它。 – dowhilefor
因爲這應該是一個動態的用戶控制列表。上面的「Format」屬性是一個依賴項屬性,最終在一個TextBox中結束。 – MikNik