【问题标题】:Set minimum or maximum Height of Row of Grid in Xaml (Xamarin.Forms)在 Xaml (Xamarin.Forms) 中设置网格行的最小或最大高度
【发布时间】:2016-06-10 05:02:54
【问题描述】:

我需要使用 Xaml 或后面的代码在 Xamarin.Forms 中设置 RowDefinition 的最小高度 Grid。我没有找到像 MinHeight 或 MaxHeight 这样的属性。 RowDefinition 只有 Height 属性。

<Grid ColumnSpacing="10" Padding="20">
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
</Grid>

【问题讨论】:

    标签: c# xaml xamarin gridview xamarin.forms


    【解决方案1】:

    你可以这样做来设置你的MinimumHeight:

    <Grid ColumnSpacing="10" Padding="20">
        <Grid.RowDefinitions>
            <RowDefinition Height= "Auto"/>
        </Grid.RowDefinitions>
        <ContentView Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" MinimumHeightRequest="20">
            ...
        </ContentView>
    </Grid>
    

    注意:MinimumHeightRequest 将在您的要求的高度和您的要求的最小高度之间选择最小值。 Source

    【讨论】:

      【解决方案2】:

      我以与 Akash Amin 相同或相似的方式解决了这个问题。 在我的自定义控件中,我添加了一个具有固定高度的空 boxview 来设置行的最小高度。重要的标签被放置在透明的 boxview 上方。所以我没有在boxview中放置任何东西。 我在自定义控件的代码隐藏中编写了代码。

      var grid = new Grid();
      grid.HorizontalOptions = LayoutOptions.Fill;
      grid.VerticalOptions = LayoutOptions.Start;
      grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) });
      grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = GridLength.Auto });
      grid.RowDefinitions.Add(new RowDefinition() { Height = GridLength.Auto, });
      
      var minSizer = new BoxView();
      minSizer.HeightRequest = 30;
      grid.Children.Add(minSizer, 0, 0);
      
       _label = new Label();
      _label.VerticalTextAlignment = TextAlignment.Center;
      _label.VerticalOptions = LayoutOptions.Center;
      grid.Children.Add(_label, 0, 0);
      
      ...
      

      (我认为 MinimumWidthRequest 和 MinimumHeightRequest 不能像大多数人期望的那样工作,这很烦人。我的意思是在 xamarin 中。)

      【讨论】:

        猜你喜欢
        • 2014-03-11
        • 2021-01-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-21
        • 2019-03-26
        • 1970-01-01
        相关资源
        最近更新 更多