1
我有一個ItemsControl
與DataTemplate
描述如何顯示每個項目。我想在DataTemplate中使用的UI是bad fit to be modelled by XAML,我將不得不在代碼中填充Grid
。如何在模板實例化時在DataTemplate中填充控件?
如何在每次執行我的DataTemplate
實例時運行此代碼,以便我有機會填充無法在XAML中表達的位?
要擴大一點,考慮一個簡化的例子。虛擬機看起來是這樣的:
class MyItem
{
public string Name { get; set; }
public MyGrid Grid { get; set; } // describes a complex grid-like model
}
的DataTemplate
看起來是這樣的:
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
<Grid/>
</DataTemplate>
的<Grid/>
是我想在基於MyItem.Grid
代碼來填充的東西。我怎樣才能做到這一點?
(如果你會說,我不應該在填充代碼<Grid/>
但只使用XAML,請回答this question代替)