Я использовал Canvas для ItemsPanel.Как я могу изменить ItemContainer в itemscontrol
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<Grid>
<Canvas/>
</Grid>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
И переопределить два метода, наследуя ItemsControl.
protected override bool IsItemItsOwnContainerOverride(object item)
{
// ABCItem is example. like ListboxItem.
return (item is ABCItem);
}
protected override DependencyObject GetContainerForItemOverride()
{
return new ABCItem();
}
Но когда я использовал ItemsPanel на холсте, Это бросить исключение.
Невозможно явно изменить коллекцию детей панели, используемой в качестве ItemsPanel для ItemsControl. ItemsControl генерирует дочерние элементы для Panel.
Как я могу использовать ItemsPanel с помощью canvas с пользовательским контейнером Itemcontainer?
thx.
Большое спасибо. – user3214694