【发布时间】:2020-05-18 04:50:47
【问题描述】:
我正在试用 Xamarin 表单集合视图。它似乎在列表中的每个项目周围都有一些额外的填充。我不知道如何删除它。
这是我的观点的图片。该视图具有浅绿色背景。模板中的 2 列网格的标签设置为红色。
这里是 XAML/C#
<CollectionView
x:Name="BodyView"
SelectionMode="Single"
HorizontalOptions="FillAndExpand"
BackgroundColor="Aqua"
Grid.Row="2" />
BodyView.ItemTemplate = new DataTemplate(() =>
{
var converter = (IValueConverter) Application.Current.Resources["GridCellConverter"];
Grid grid = new Grid( );
grid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto });
foreach (var col in _gridColumns)
{
grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) });
var content = new Label();
content.Style = (Style)Application.Current.Resources["GridCellLabel"];
content.BackgroundColor = Color.Red;
Binding binding = new Binding("CellData", BindingMode.OneWay, converter, col.PageFieldId);
content.SetBinding(Label.TextProperty, binding);
grid.Children.Add(content, grid.ColumnDefinitions.Count - 1, 0);
}
return grid;
});
我将所有能找到的东西都归零。
我尝试在网格上设置负边距,但它不会向左移动。
有什么办法可以去掉内边距?
【问题讨论】:
-
您是如何为 GridCellLabel 设置
Style的?你为它设置了 Margin 吗?您可以在“BodyView.ItemTemplate”中为网格的 BackgroundColor 属性指定一个值,以检查网格是否填充了 collectionView 的宽度。 -
GridCellLabel 样式只是大小和文本颜色。我尝试设置网格背景颜色。我设置了所有的东西背景颜色!填充绝对来自集合视图。我很确定它是硬编码的,但希望有人可能有一个想法。
-
你能分享一个基本的演示链接吗?这将有助于重现问题以获得解决方案。
标签: xamarin.forms