如何在Windows机器上使用带有参数SelectionMode="Multiple"
的maui在collectionview中使用自定义选择器,或者如何隐藏它?
xaml文件是这样的:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MauiCollectionMVVM.MainPage">
<ContentPage.Resources>
<Style TargetType="Grid">
<Setter Property="VisualStateManager.VisualStateGroups">
<VisualStateGroupList>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="Selected">
<VisualState.Setters>
<Setter Property="BackgroundColor"
Value="LightSkyBlue" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateGroupList>
</Setter>
</Style>
</ContentPage.Resources>
<VerticalStackLayout >
<CollectionView x:Name="StagiaireCollectionView"
SelectionMode="Multiple"
ItemsSource="{Binding students}" >
<CollectionView.ItemTemplate>
<DataTemplate>
<Grid >
<Grid.RowDefinitions>
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0"
Text="{Binding Name}" x:Name="TxtUserPrimary" FontSize="12" VerticalOptions="Center"/>
<ImageButton Grid.Column="1" x:Name="ImgLicence" VerticalOptions="Center" BackgroundColor="Transparent">
<ImageButton.Source>
<FontImageSource
FontFamily="IconsInscriptionStagiaires"
Glyph=""
Size="10"
Color="Gray">
</FontImageSource>
</ImageButton.Source>
</ImageButton>
<ImageButton Grid.Column="2" x:Name="ImgOnedrive" BackgroundColor="Transparent">
<ImageButton.Source>
<FontImageSource
FontFamily="IconsInscriptionStagiaires"
Glyph=""
Size="20"
Color="Gray"
>
</FontImageSource>
</ImageButton.Source>
</ImageButton>
<ImageButton Grid.Column="3" x:Name="ImgFolder" BackgroundColor="Transparent">
<ImageButton.Source>
<FontImageSource
FontFamily="IconsInscriptionStagiaires"
Glyph=""
Size="20"
Color="Gray">
</FontImageSource>
</ImageButton.Source>
</ImageButton>
</Grid>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</VerticalStackLayout>
</ContentPage>
字符串
结果
的数据
我可以自定义所选线条的颜色(请参阅我的代码),但不能自定义选择图像和用于此图像的位置。
正如我们所看到的,有一个显示图像(白色)的地方。
如何隐藏或自定义此零件?
1条答案
按热度按时间ma8fv8wu1#
我已经检查了Windows上Maui的CollectionView的源代码。它是实现ListViewBase的ListView。
ListViewBase有IsMultiSelectCheckBoxEnabled Property。你可以设置属性为false,它会隐藏复选框的位置。
只需在MainPage.xaml.cs中放入以下代码:
字符串