有没有办法在Xamarin表单中隐藏listview的组头? 我试图在模板中设置标题高度,但它不起作用:
'class'
我只想在组之间显示分隔符。
答案 0 :(得分:3)
是的!您需要在ListView上将HasUnevenRows
设置为true。然后将标题模板设置为高度为0的ViewCell
,其中包含空网格或其他元素。
<ListView ItemsSource="{Binding GroupedMenuItems}" SelectedItem="{Binding SelectedMenuItem}" SeparatorVisibility="None" IsGroupingEnabled="true" HasUnevenRows="True">
<ListView.GroupHeaderTemplate>
<DataTemplate>
<ViewCell Height="0">
<Grid/>
</ViewCell>
</DataTemplate>
</ListView.GroupHeaderTemplate>
<ListView.ItemTemplate>
<DataTemplate>
<ImageCell Text="{Binding Title}" ImageSource="{Binding IconSource}" TextColor="#000000"/>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
答案 1 :(得分:0)
SuavePirate的答案可能适用于Android,但需要对我进行微小的改动才能让它几乎在iOS上运行。我不得不将ViewCell高度从0更改为1.我知道,它很奇怪,但是,无论出于什么原因,它都拒绝以其他方式工作。
由于这个小变化,仍有一个像素高的线将组彼此分开,这不是理想的,但对于大多数用途来说足够好。我试图通过在ViewCell中放置StackLayout并将其BackgroundColor设置为&#34; White&#34;来隐藏该行。我还尝试在网格中放置一个BoxView并将其颜色设置为&#34; White&#34;,但这两种方法都没有成功隐藏1像素高线。
哦,好吧,它仍然比没有好。