c# - 将 BackGroundColor 更改为 CollectionView 的元素
问题描述
在CollectionView
我有一个DateTime
属性的项目,在启动时我选择与今天日期匹配的项目
public class DateColorConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (((DateTime)value).Date == DateTime.Today) return Color.Blue;
return Color.Gray;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
}
如果我按下不同的元素,该元素会变成蓝色,
private void SelectedDate_Tapped(object sender, EventArgs e)
{
var model = (Grid)sender;
model.BackGroundColor=Color.Blue;
}
我的收藏视图
<CollectionView
x:Name="ColCalendar"
RelativeLayout.YConstraint="{ConstraintExpression
Type=Constant,
Constant=68}"
RelativeLayout.WidthConstraint="{ConstraintExpression
Type=RelativeToParent,
Property=Width,
Factor=1}"
HeightRequest="45">
<CollectionView.ItemsLayout>
<LinearItemsLayout Orientation="Horizontal" ItemSpacing="7"/>
</CollectionView.ItemsLayout>
<CollectionView.ItemTemplate>
<DataTemplate>
<Grid BackgroundColor="{Binding Datet,Converter={StaticResource DateColor}}" RowSpacing="0.1" xct:TouchEffect.NativeAnimation="True" xct:TouchEffect.PressedBackgroundColor="LightGray" xct:TouchEffect.PressedOpacity="0.1">
<Grid.RowDefinitions>
<RowDefinition Height="9"/>
<RowDefinition Height="20"/>
<RowDefinition Height="8"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="43"/>
</Grid.ColumnDefinitions>
<Grid.GestureRecognizers>
<TapGestureRecognizer Tapped="SelectedDate_Tapped"/>
</Grid.GestureRecognizers>
<Label Grid.Row="0" Text="{Binding Giorno}" FontSize="8" TextColor="White" HorizontalTextAlignment="Center"/>
</Grid>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
但我希望自动选择的那个再次变灰。我该怎么办?
解决方案
推荐阅读
- linux - sudo:/etc/sudoers.d 归 gid 501 所有,应为 0
- eclipse - 未指定 Eclipse Maven JavaFX ${maven.home}
- javascript - Audiotag 时间控制 (#t=5,6) 第二次不工作
- laravel - 在 Laravel 中编辑多个图像
- flutter - ListView 输出 dataList 2 次
- c++ - 使用 C++20 Concept 约束模板参数
- c# - 使用 ActivePresentation 属性复制幻灯片是否适合 Web 部署?
- python - 复制到新 DataFrame 的行数受现有行数的限制
- griddb - GridDb在执行环境变量命令时抛出匿名执行错误
- javascript - 使用自定义标签反应原生渲染 HTML