在WinJS應用列表視圖的itemTemplate
屬性可以接受,其中我可以手動創建的元件的功能。模板渲染
哪些是XAML/C#應用這種方法模擬?
我知道DataTemplate中選擇,但我需要手動創建的項目,我想擺脫掉因業績模板。
在WinJS應用列表視圖的itemTemplate
屬性可以接受,其中我可以手動創建的元件的功能。模板渲染
哪些是XAML/C#應用這種方法模擬?
我知道DataTemplate中選擇,但我需要手動創建的項目,我想擺脫掉因業績模板。
你見過DataTemplateSelector? http://code.msdn.microsoft.com/windowsapps/The-DataTemplateSelector-93e46ad7
使用數據綁定謝謝你,我知道的DataTemplate選擇,但我需要手動創建的項目,我想擺脫掉 – Alexander
我想你可以做一個CustomControl自ItemsControl繼承。
public class BuildingComparer : ItemsControl
{}
在那裏,你會發現一些方法來覆蓋:
protected override DependencyObject GetContainerForItemOverride()
{
var container = new ContentPresenter();
//Do Stuff
return container;
}
而且你必須進入項目屬性,以便可以畫畫,每當SizeChanged事件發生的元素,你可以調用一個方法手動繪製所有元素。
希望它可以幫助你。
在C#/ XAML做到這一點,你需要將ItemsControl中的ItemsSource
屬性綁定到,爲您創建的項目的屬性。
例XAML:
<ItemsControl ItemsSource="{Binding SourceProperty}" />
實例的DataContext:
public IEnumerable SourceProperty
{
get
{
yield return new TextBlock(new Run("First"));
yield return new TextBlock(new Run("Second"));
yield return new TextBlock(new Run("Third"));
}
}
編輯: 如果你絕對必須避免所有數據綁定(我不知道你爲什麼會),您可將ItemsSource
在代碼隱藏:
更新XAML:
<ItemsControl Name="MyItemsControl" />
後面的代碼:
public MainWindow()
{
InitializeComponent();
MyItemsControl.ItemsSource = SourceProperty;
}
你想要的模板創建功能的C#中的解決方案,使您可以創建動態模板作爲winJs?我不清楚這個問題是這樣的:) ?? – Anobik
@Anobik是的,但我不想在創建的控制 – Alexander