相当于Xamarin形式的Div的“float:left”

时间:2017-09-14 07:20:52

标签: c# xaml xamarin xamarin.forms

enter image description here目前我有一项任务是创建一个包含多个stacklayout(一种盒子)的xamarin页面,并在填满屏幕后按顺序将其填充在水平方向上,然后剩余的盒子应该开始填写下一行水平。究竟Html中的Div标签如何与“Float:left”属性一起使用。 首先,是否有可能采用Xamarin形式? 我尝试使用Grid单元格的isvisible属性创建一个false或者为true的Grid,但它根本不是我正在处理的任务的解决方案。

布局应该如下图所示,如果我有三个框(根据后端的对象决定)那么它应该填充第一行三个连续的单元格,如果有5个对象被提取则第五个对象(框)应该被填充在第二行第一个单元格。

3 个答案:

答案 0 :(得分:4)

在Xamarin中有很多方法可以实现它(因为默认情况下它不受支持):

也许将来我们会有一个GridView,例如在WPF中,这正是您正在寻找的。

我希望这可以帮到你。

答案 1 :(得分:0)

另一种选择是使用网格:

您可以用您喜欢的任何内容替换Button元素,每个按钮的高度为110,宽度将自动调整大小

        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="110" />
                <RowDefinition Height="110" />
                <RowDefinition Height="110" />
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="*" />
            </Grid.ColumnDefinitions>
            <Button Text="1" Grid.Row="0" Grid.Column="0" />
            <Button Text="2" Grid.Row="0" Grid.Column="1" />
            <Button Text="3" Grid.Row="0" Grid.Column="2" />
            <Button Text="4" Grid.Row="1" Grid.Column="0" />
            <Button Text="5" Grid.Row="1" Grid.Column="1" />
            <Button Text="6" Grid.Row="1" Grid.Column="2" />
            <Button Text="6" Grid.Row="2" Grid.Column="0" />
            <Button Text="6" Grid.Row="2" Grid.Column="1" />
            <Button Text="6" Grid.Row="2" Grid.Column="2" />
        </Grid>

答案 2 :(得分:0)

使用flexlayout-从xamarin签出flexlayoutdemo应用