4

In my Xamarin forms application I want to add borders to a Grid / StackPanel. Also the background color will be transparent. I used frame control , but when I set background color to transparent the border also not shown. Please help me?

Aneesh.A.M
  • 1,128
  • 4
  • 17
  • 35

4 Answers4

5

You basically have two possibilies, since this is not yet supported in Forms, where the first is to use BoxViews as explained on SO in this post.

Otherwise, you can wrap a StackLayout around your View (the StackLayout or Grid as you mentioned) with a BackgroundColor and Padding of 0.5 as explained here.

Let me know if you need more concrete examples.

Community
  • 1
  • 1
Demitrian
  • 3,200
  • 1
  • 24
  • 41
2

There's no Border property for GridView, but:

Just set grid.BackgroundColor to your desired border color value, then set grid.ColumnSpacing and grid.RowSpacing to some value and make sure all controls you add to the grid have own BackgroundColor set correctly.

Daniel Luberda
  • 7,374
  • 1
  • 32
  • 40
1

A BoxView can be used for border purpose. In the following XAML code, note that FillAndExpand option is used for HorizontalOptions of the StackLayout

<StackLayout VerticalOptions="Start" HorizontalOptions="FillAndExpand"  >
    <BoxView  BackgroundColor="Cyan" HeightRequest="5" VerticalOptions="End" HorizontalOptions="FillAndExpand" />
    <BoxView  BackgroundColor="Cyan" HeightRequest="1" VerticalOptions="Start" HorizontalOptions="FillAndExpand" />                     
</StackLayout>
LCJ
  • 22,196
  • 67
  • 260
  • 418
0

There's no Border property for GridView, but:

Just set grid.BackgroundColor to your desired border color value, then set grid.ColumnSpacing and grid.RowSpacing to some value and make sure all controls you add to the grid have own BackgroundColor set correctly.

You also have to set Grid.Padding to whatever the border width you want.