【问题标题】:Xamarin Forms - Button MarginXamarin 表单 - 按钮边距
【发布时间】:2016-08-14 22:05:18
【问题描述】:

我有以下 Xaml:

<Grid Padding="0">
        <Grid.ColumnDefinitions>
          <ColumnDefinition Width="*"></ColumnDefinition>
          <ColumnDefinition Width="*"></ColumnDefinition>
          <ColumnDefinition Width="*"></ColumnDefinition>
        </Grid.ColumnDefinitions>
        <ContentView Grid.Column="0">
          <Button Text="SomeText" 
                  BorderRadius="0" Grid.Column="0" 
                  BorderWidth="0"
                  BackgroundColor="Red"
                  TextColor="White"
                  ></Button>
        </ContentView>
        <ContentView Grid.Column="0">
          <Button Text="SomeText" 
                  BorderRadius="0" Grid.Column="0" 
                  BorderWidth="0"
                  BackgroundColor="Blue
                  TextColor="White"
                  ></Button>
        </ContentView>
        <ContentView Grid.Column="0">
          <Button Text="SomeText" 
                  BorderRadius="0" Grid.Column="0" 
                  BorderWidth="0"
                  BackgroundColor="Green
                  TextColor="White"
                  ></Button>
        </ContentView>
      </Grid>

渲染时,每个按钮之间都有一个间隙。我希望按钮可以触摸。但是我在任何地方都看不到任何填充或边距设置?

【问题讨论】:

  • 是否每个都需要 ContentVIew?如果我没记错的话,默认情况下它有一个填充设置。或者 Button 怎么样,是否有它使用的默认模板给它 Margin?此外,您不需要对子元素进行 Grid.* 声明,只需对它们的父元素进行声明即可。
  • Grid 对象有一个RowSpacingColumnSpacing 属性,您可以将其设置为cero;

标签: xaml xamarin xamarin.forms


【解决方案1】:

试试:

<Grid Padding="0" ColumnSpacing="0" RowSpacing="0">

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="ButtonPaddingTest.ButtonPage">
    <ContentPage.Content>
    <Grid Padding="0" ColumnSpacing="0" RowSpacing="0">
        <Grid.ColumnDefinitions>
          <ColumnDefinition Width="*"></ColumnDefinition>
          <ColumnDefinition Width="*"></ColumnDefinition>
          <ColumnDefinition Width="*"></ColumnDefinition>
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
                <RowDefinition Height="*" />
                <RowDefinition Height="*" />
                <RowDefinition Height="*" />
            </Grid.RowDefinitions>
        <ContentView Grid.Column="0" Grid.Row="0" >
          <Button Text="SomeText" 
                  BorderRadius="0" Grid.Column="0" 
                  BorderWidth="0"
                  BackgroundColor="Red"
                  TextColor="White"
                  ></Button>
        </ContentView>
        <ContentView Grid.Column="0" Grid.Row="1" >
          <Button Text="SomeText" 
                  BorderRadius="0" Grid.Column="0" 
                  BorderWidth="0"
                  BackgroundColor="Blue"
                  TextColor="White"
                  ></Button>
        </ContentView>
        <ContentView Grid.Column="0" Grid.Row="2" >
          <Button Text="SomeText" 
                  BorderRadius="0" Grid.Column="0" 
                  BorderWidth="0"
                  BackgroundColor="Green"
                  TextColor="White"
                  ></Button>
        </ContentView>
      </Grid>
    </ContentPage.Content>
</ContentPage>

【讨论】:

  • 这很有效,谢谢。不敢相信我自己找不到这些信息!
猜你喜欢
  • 2017-03-20
  • 2023-03-31
  • 1970-01-01
  • 2012-02-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多