У меня есть ListBox, и мне нужно установить его ControlTemplate на Virtualization WrapPanel, который является классом, расширяющим VirtualizingPanel, используя стиль, который выглядит следующим образом:
<Style TargetType="{x:Type ListBox}" x:Key="PhotoListBoxStyle">
<Setter Property="Foreground" Value="White" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListBox}" >
<s:VirtualizingVerticalWrapPanel>
</s:VirtualizingVerticalWrapPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Теперь в закрытом методеВиртуализация WrapPanel ниже я пытаюсь получить доступ к этому. ЭлементContainerGenerator, но я получаю нулевое значение, любая идея, в чем проблема ??
private void RealizeFirstItem()
{
IItemContainerGenerator generator = this.ItemContainerGenerator;
GeneratorPosition pos = generator.GeneratorPositionFromIndex(0);
using (generator.StartAt(pos, GeneratorDirection.Forward))
{
UIElement element = generator.GenerateNext() as UIElement;
generator.PrepareItemContainer(element);
this.AddInternalChild(element);
}
}