WPF: ListBox с WrapPanel, проблемой вертикальной прокрутки

db.collection.find({"createdDate":{$gte:new ISODate("2017-04-14T23:59:59Z"),$lte:new ISODate("2017-04-15T23:59:59Z")}}).count();

Замените collection именем коллекции, которую хотите выполнить запрос

23
задан kodbuse 4 May 2009 в 05:33
поделиться

4 ответа

Ну вот, наконец-то я наткнулся на решение. Я добавлял свой UserControl в панель-заполнитель, которая выглядела следующим образом:

            <ScrollViewer Margin="20" >
                <StackPanel Name="contentPanel"></StackPanel>
            </ScrollViewer>

Однако, когда я переключил его на Grid, все стало работать так, как я хотел:

<Grid Name="contentPanel" Margin="20" />

Я думаю, что это связано с StackPanel, а не по умолчанию занимает все вертикальное пространство, как это делает Grid.

15
ответ дан 29 November 2019 в 01:55
поделиться

Я думаю, вам лучше переопределить шаблон ItemPanelTemplate:

<Grid>
<ListBox ScrollViewer.HorizontalScrollBarVisibility="Disabled">
    <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel IsItemsHost="True" />
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>
    <ListBoxItem>listbox item 1</ListBoxItem>
    <ListBoxItem>listbox item 2</ListBoxItem>
    <ListBoxItem>listbox item 3</ListBoxItem>
    <ListBoxItem>listbox item 4</ListBoxItem>
    <ListBoxItem>listbox item 5</ListBoxItem>
</ListBox>

19
ответ дан Eric Ouellet 29 November 2019 в 01:55
поделиться

Все, что мне нужно было сделать, это установить следующее, и проблема ушла:

<ListBox ScrollViewer.HorizontalScrollBarVisibility="Disabled">
6
ответ дан Eternal21 29 November 2019 в 01:55
поделиться

Поместите свой список внутри ScrollViewer, а затем установите для свойства VerticalScrollBarVisibility программы просмотра прокрутки значение «Авто»

        <ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">
    <ListBox Name="itemListBox" BorderThickness="0" ItemsSource="{Binding}" >
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel Background="LightGray" Margin="5" >
                <StackPanel Margin="5">
                    <Image Source="{Binding Path=LocalThumbPath}" Height="100" />
                    <TextBlock Text="{Binding Path=Name}" TextAlignment="Center"></TextBlock>
                </StackPanel>
            </StackPanel>
        </DataTemplate>
    </ListBox.ItemTemplate>
    <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel />
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>
</ListBox>
</ScrollViewer>


HTH

1
ответ дан Anand Shah 29 November 2019 в 01:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: