有没有办法在 Xamarin C# 中的 ListView 的列上方创建列名
Posted
技术标签:
【中文标题】有没有办法在 Xamarin C# 中的 ListView 的列上方创建列名【英文标题】:Is there a way to create a column names above the columns from ListView in Xamarin C# 【发布时间】:2021-03-09 03:49:06 【问题描述】:我有一个来自 ListView 的三列和网格。有没有办法在列上方创建名称...现在它们看起来像那样。
ListView without column names
listview 的代码如下所示:
<StackLayout>
<ListView BackgroundColor="#d3d3d3"
x:Name="MeteoView"
ItemsSource="Binding Forecast"
HeightRequest="132"
IsVisible="false"
RowHeight="46">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30*" />
<ColumnDefinition Width="30*" />
<ColumnDefinition Width="30*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Text="Binding DisplayDat"/>
<Label Grid.Column="1" Text="Binding DisplayT_2M"/>
<Label Grid.Column="2" Text="Binding DisplayVmax_10M"/>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
如何设置静态字符串以在每一列上显示名称?
【问题讨论】:
您可以在 ListView 上方添加一个视图,其中包含显示列标题的类似网格。如果您希望它与内容一起滚动,您可以使用 ItemTemplate 选择器添加它。 你能给我举个例子吗? 同意@Cheesebaron,你可以查看我的答案。 【参考方案1】:选项 1:
您可以设置 ListView
的 Header<ListView.Header>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30*" />
<ColumnDefinition Width="30*" />
<ColumnDefinition Width="30*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Text="xxx"/>
<Label Grid.Column="1" Text="xxx"/>
<Label Grid.Column="2" Text="xxx"/>
</Grid>
</ListView.Header>
注意:这样标题会随着整个 ListView 滚动。
选项 2
如果你想在 screen 中修复 Name ,你可以在 ListView 的顶部定义另一个 Grid
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30*" />
<ColumnDefinition Width="30*" />
<ColumnDefinition Width="30*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Text="xxx"/>
<Label Grid.Column="1" Text="xxx"/>
<Label Grid.Column="2" Text="xxx"/>
</Grid>
<ListView>
//...
</ListView>
【讨论】:
以上是关于有没有办法在 Xamarin C# 中的 ListView 的列上方创建列名的主要内容,如果未能解决你的问题,请参考以下文章
在 Typescript 中,有没有办法将一个类写成一个数组,所以我可以做 class[i],就像 C# 中的 List<T>
如何在 IDE 中获取 Xamarin Studio C# 输出?
有没有办法使用 Xamarin.Forms PCL 项目中的 Devexpress.Xamarin.Android.Charts
有没有办法通过读取 csv 文件来填充 Xamarin.Forms 中的 ObservableCollection?