为标签添加右边框

时间:2018-01-18 11:53:31

标签: c# xaml xamarin xamarin.forms

我试图为我的标签添加右边框。在CSS中,您可以使用几行代码:

label {
        border-right : 2px solid #000;
      }

这在Xamarin.Forms XAML中似乎有所不同,因为任何元素都没有边框属性。这类似于我想要实现的目标:

please click the image

这是我的代码:

<ListView x:Name="listview" SeparatorVisibility="None" 
          HasUnevenRows="True" >
    <ListView.ItemTemplate>
        <DataTemplate>
            <ViewCell>
                <StackLayout Padding="20, 10">
                    <Label Text="{Binding LoremIpsum}"
                           HorizontalOptions="Start"/>
                    <Label Text="{Binding LoremIpsum1}" />
                    <Label Text="{Binding LoremIpsum2}" />
                </StackLayout>
            </ViewCell>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

有什么办法可以在标签上添加右边框吗?我尝试使用带有WidthRequest = 1HeightRequest = 10的BoxView,但它不起作用。我甚至尝试使用图像,但这不是好习惯。任何帮助,将不胜感激。

2 个答案:

答案 0 :(得分:5)

使用网格布局和BoxView显示绿色和宽度为2的右边框

例如

ImportError: No module named 'examplesashamodule'

输出:

enter image description here

答案 1 :(得分:2)

作为使用Grid的替代解决方案,您还可以使用StackLayout完成此操作。这里的关键是使用Orientation="Horizontal"将原始StackLayout嵌套在另一个内。

<ListView
    x:Name="listview"
    SeparatorVisibility="None"
    HasUnevenRows="True">
    <ListView.ItemTemplate>
        <DataTemplate>
            <ViewCell>
                <StackLayout
                    Orientation="Horizontal">
                    <StackLayout
                        Padding="20, 10"
                        HorizontalOptions="FillAndExpand">
                        <Label
                            Text="{Binding LoremIpsum}"
                            HorizontalOptions="Start"/>
                        <Label
                            Text="{Binding LoremIpsum1}" />
                        <Label
                            Text="{Binding LoremIpsum2}" />
                    </StackLayout>
                    <BoxView
                        WidthRequest="1"
                        Color="Green" />
                </StackLayout>
            </ViewCell>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>