none
Большое количество данных в ItemsPresenter RRS feed

  • Вопрос

  • У меня есть самописный контрол на основе ListView. И стиль для него. Без стиля скрол криво отображается но все работает. При добавлении стиля небольшое количество данных нормально выводится при большом количестве данных(несколько тысяч строк) программа просто зависает. Путем эксперимента определил что причина вроде бы кроется в <ItemsPresenter/>. Есть ли у него какие нибудь ограничения и как их можно обойти?

     <Style TargetType="{x:Type my:MyListView}">  <!--  Стиль для листвю-->
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type my:MybListView}">
                <Border BorderBrush="{TemplateBinding BorderBrush}" Background="White" BorderThickness="{TemplateBinding BorderThickness}">
                  <DockPanel>
                    <GridViewHeaderRowPresenter DockPanel.Dock="Top" DataContext="{Binding View, RelativeSource={RelativeSource TemplatedParent}}"
                     Columns="{Binding Columns}">
                    </GridViewHeaderRowPresenter>
                    <ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" DockPanel.Dock="Top">
                      <DockPanel>
                        <ItemsPresenter/>
                      </DockPanel>
                    </ScrollViewer>
                  </DockPanel>
                </Border>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
        </Style>
    

     

    5 апреля 2011 г. 4:32

Ответы