none
Есть способ размещать элементы ListView не сверху вниз, а снизу вверх? RRS feed

Ответы

  • В вопросе не указана UI технология, поэтому пример на XAML (WPF).

    <Window x:Class="WpfApp1.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            mc:Ignorable="d"
            Title="MainWindow" Height="200" Width="250">
        <Grid>
    		<ListView BorderThickness="1" Margin="10">
    			<ListView.ItemsPanel>
    				<ItemsPanelTemplate>
    					<VirtualizingStackPanel VerticalAlignment="Bottom"/>
    				</ItemsPanelTemplate>
    			</ListView.ItemsPanel>
    			<ListViewItem>Item 1</ListViewItem>
    			<ListViewItem>Item 2</ListViewItem>
    			<ListViewItem>Item 3</ListViewItem>
    			<ListViewItem>Item 4</ListViewItem>
    		</ListView>
        </Grid>
    </Window>
    

    Результат:

    14 августа 2018 г. 5:01

Все ответы

  • Типично в чате элементы расположены сверху вниз, а не снизу вверх. Если бы элементы были расположены снизу вверх, то новые сообщения оказались бы вверху.

    Я проиллюстрирую чтоб было понятно.

    A - сверху вниз

    B - снизу вверх

    C - сверху вниз, элементы списка выровнены вниз

    A   B  C  

    ---------

    1            

    2   3   1

    3   2   2

         1   3

    ---------

    Думаю вы имели в виду вариант C, именно он типично используется в чате. Как не сложно видеть после заполнения всего места (добавить 4) варианты A и C ничем не отличаются.

    В любом случае так сделать можно. А как именно - зависит от используемой технологии которую вы держите в секрете. 


    This posting is provided "AS IS" with no warranties, and confers no rights.

    12 августа 2018 г. 20:32
    Модератор
  • В вопросе не указана UI технология, поэтому пример на XAML (WPF).

    <Window x:Class="WpfApp1.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            mc:Ignorable="d"
            Title="MainWindow" Height="200" Width="250">
        <Grid>
    		<ListView BorderThickness="1" Margin="10">
    			<ListView.ItemsPanel>
    				<ItemsPanelTemplate>
    					<VirtualizingStackPanel VerticalAlignment="Bottom"/>
    				</ItemsPanelTemplate>
    			</ListView.ItemsPanel>
    			<ListViewItem>Item 1</ListViewItem>
    			<ListViewItem>Item 2</ListViewItem>
    			<ListViewItem>Item 3</ListViewItem>
    			<ListViewItem>Item 4</ListViewItem>
    		</ListView>
        </Grid>
    </Window>
    

    Результат:

    14 августа 2018 г. 5:01