Вам не нужно создавать такую запись.
Хотите ли вы достичь такого результата, как этот сценарий?
Если это так, следует добавить этот макет в папку xaml.
<StackLayout>
<!-- Place new controls here -->
<dg:DataGrid ItemsSource="{Binding Teams}" SelectionEnabled="True"
RowHeight="70" HeaderHeight="50" BorderColor="#CCCCCC" HeaderBackground="#E0E6F8">
<dg:DataGrid.HeaderFontSize>
<OnIdiom x:TypeArguments="x:Double">
<OnIdiom.Tablet>15</OnIdiom.Tablet>
<OnIdiom.Phone>13</OnIdiom.Phone>
</OnIdiom>
</dg:DataGrid.HeaderFontSize>
<dg:DataGrid.Columns>
<dg:DataGridColumn Title="Team" PropertyName="Name" Width="2*"/>
<dg:DataGridColumn Title="Win" PropertyName="Win" Width="0.95*"/>
<dg:DataGridColumn Title="Loose" PropertyName="Loose" Width="1*"/>
<dg:DataGridColumn Title="Home" PropertyName="Home"/>
<dg:DataGridColumn Title="Percentage" PropertyName="Percentage" StringFormat="{}{0:0.00}" />
</dg:DataGrid.Columns>
</dg:DataGrid>
</StackLayout>
Если вы не знаете, как добавлять строки в этом элементе управления. Например,
<dg:DataGridColumn Title="Team" PropertyName="Name" Width="2*"/>
над строкой имеют три атрибута: Title
, PropertyName
, Width
.
Title
: средняя первая линия Команда, победа, проигрыш, домашний, процентные титулы.
Width
: средняя ширина Column
Если вы хотите чтобы добавить данные, взорвавшие Title
, вы должны использовать атрибут PropertyName
.
В фоновом макете вы добавляете контекст привязки.
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
this.BindingContext = new MyViewModel();
}
}
Вот мой MyViewModel.cs
public class MyViewModel
{
public ObservableCollection<Team> Teams { get; set; }
public MyViewModel()
{
Teams = new ObservableCollection<Team>();
Teams.Add(new Team() { Home = "lost1", Win = "31", Loose="1", Name="cava", Percentage="91" }) ;
Teams.Add(new Team() { Home = "lost2", Win = "31", Loose = "2", Name = "cava", Percentage = "91" });
Teams.Add(new Team() { Home = "lost3", Win = "31", Loose = "3", Name = "cava", Percentage = "91" });
Teams.Add(new Team() { Home = "lost4", Win = "31", Loose = "4", Name = "cava", Percentage = "91 "});
Teams.Add(new Team() { Home = "lost5", Win = "31", Loose = "5", Name = "cava", Percentage = "91" });
Teams.Add(new Team() { Home = "lost6", Win = "31", Loose = "6", Name = "cava", Percentage = "91", });
}
}
Вот мой Team
код.
public class Team
{
public string Name { get; set; }
public string Win { get; set; }
public string Loose { get; set; }
public string Home { get; set; }
public string Percentage { get; set; }
}
Вот мое демо.
https://github.com/851265601/Xamarin.Android_ListviewSelect/blob/master/DataGridDemo1.zip