2017-08-01 189 views
0

尝试在所有设备(iOS,Android,UWP)上生成Xamarin.Forms页面,但需要将内容并排显示为卡片视图,如下例所示。在Xamarin表格中并排显示Cardview

达到此目的的最佳方法是什么?是否有任何OSS库存在,因为我似乎无法找到任何这样的开箱即用的东西?

card view listing

编辑:不幸的是我忘了提,这是绑定到一个IEnumerable源。项目数量不固定。每张卡内的内容将只有来自不同项目的相同模板。

谢谢

+0

您是否希望它充当列表视图或固定布局? –

+0

如果可能的话,我希望列的数量是动态的,取决于屏幕的宽度。 – lusocoding

+0

我会在下面发表一个答案,我希望它可以帮助你。 –

回答

0

看起来你需要一个包裹布局。其中一种不是开箱即用的,但您可以在此处找到代码:Link to Wrap Layout Code

+0

效果很好。谢谢你的提示 – lusocoding

0

所以当我从你的意见了解你需要做的是一个ScrollView内的网格。这里是一个exmaple;

<ScrollView Orientation="Vertical"> 
    <Grid RowSpacing="10" ColumnSpacing="10"> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="*"/> 
      <RowDefinition Height="*"/> 
      <RowDefinition Height="*"/> 
      <RowDefinition Height="*"/> 
     </Grid.RowDefinitions> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="AUTO"/> 
      <ColumnDefinition Width="AUTO"/> 
     </Grid.ColumnDefinitions> 
     <Frame Grid.Row="0" Grid.Column="0"> 
      <!--DO YOUR DESIGN FOR FRAME No. 1 HERE--> 
     </Frame> 
      <Frame Grid.Row="1" Grid.Column="0"> 
       <!--DO YOUR DESIGN FOR FRAME No. 2 HERE--> 
      </Frame> 
      <Frame Grid.Row="2" Grid.Column="0"> 
       <!--DO YOUR DESIGN FOR FRAME No. 3 HERE--> 
      </Frame> 
      <Frame Grid.Row="3" Grid.Column="0"> 
       <!--DO YOUR DESIGN FOR FRAME No. 4 HERE--> 
      </Frame> 
      <Frame Grid.Row="0" Grid.Column="1"> 
       <!--DO YOUR DESIGN FOR FRAME No. 5 HERE--> 
      </Frame> 
      <Frame Grid.Row="1" Grid.Column="1"> 
       <!--DO YOUR DESIGN FOR FRAME No. 6 HERE--> 
      </Frame> 
      <Frame Grid.Row="2" Grid.Column="1"> 
       <!--DO YOUR DESIGN FOR FRAME No. 7 HERE--> 
      </Frame> 
      <Frame Grid.Row="3" Grid.Column="1"> 
       <!--DO YOUR DESIGN FOR FRAME No. 8 HERE--> 
      </Frame> 
     </Grid> 
    </ScrollView> 

我真的建议,虽然是搜索一个库,会给你在ListView中做到这一点的可能性。这样您将减少硬编码的设计代码,并获得更好更容易的布局访问。

+0

嗨@Andreas,谢谢你的帮助。静态布局不是我想要的。项目的数量将基于视图模型中的可绑定Ienumerable属性。我对解释的错误。对不起 – lusocoding

+0

没问题!我之前做过这样的事情。如果你还没有找到答案,请告诉我,这样我可以在我的档案中搜索它。 –