Xamarin列表视图项目水平和垂直中间的文本不起作用

时间:2018-11-08 08:50:24

标签: listview xamarin.forms centering

所以我有一个ListView,但我无法使Text位于水平和垂直中间。

我尝试过:

                    <ListView x:Name="EssenListView" 
                    ItemsSource="{Binding EssenAnTag}"
                    Footer=""
                    SeparatorVisibility="None"
                    VerticalOptions="FillAndExpand"
                    HorizontalOptions="FillAndExpand"
                    HasUnevenRows="true"
                    RefreshCommand="{Binding EssenLadenCommand}"
                    IsPullToRefreshEnabled="true"
                    IsRefreshing="{Binding Laedt, Mode=OneWay}"
                    ItemSelected="EssenGewaehlt">
                    <ListView.ItemTemplate>
                        <DataTemplate>
                            <ViewCell>
                                <ViewCell.View>
                                    <StackLayout>
                                        <StackLayout HorizontalOptions="FillAndExpand" HeightRequest="65" BackgroundColor="{Binding BackgroundColor}">
                                            <Label Text="{Binding Ausgabe}" 
                                                FontSize="18"
                                                HorizontalOptions="Center"
                                                VerticalOptions="Center"
                                                LineBreakMode="WordWrap" />
                                        </StackLayout>
                                        <Label HeightRequest="15" BackgroundColor="White"/>
                                    </StackLayout>
                                </ViewCell.View>
                            </ViewCell>
                        </DataTemplate>
                    </ListView.ItemTemplate>
                </ListView>

如下面的图片所示,如果文本较小,则至少水平居中,但是文本较长且折断而不是居中。enter image description here

3 个答案:

答案 0 :(得分:0)

在Label控件中添加Horizo​​ntalTextAlignment =“ Center”属性,如下所示:

                                  <Label Text="{Binding Ausgabe}" 
                                            FontSize="18"
                                            HorizontalOptions="Center"
                                            HorizontalTextAlignment="Center"
                                            VerticalOptions="Center"
                                            LineBreakMode="WordWrap" />

答案 1 :(得分:0)

使用HorizontalTextAlignment="Center"来对齐标签中的文本。

HorizontalOptions="Center"对齐标签本身。

答案 2 :(得分:0)

在列表视图中使用 HasUnevenRows="True"