Сценарий выглядит следующим образом:
public enum DayOfWeek
{
All = 0,
Monday = 1,
Tuesday = 2,
Wednesday = 3,
Thursday = 4,
Friday = 5,
Saturday = 6,
Sunday = 7
}
public class Class2{
public List<DayOfWeek> DaysOfWeek
}
public class Class1{
public List<Class2> aList{get; set;}
}
У меня есть Class1 в моей ViewModel, которая связана с View через BindingContext.
Я хочу показать в списке Список, который яв настоящее время.
В ListView я определяю ViewCell (внутри), например:
<Grid Grid.Row="1" Grid.Column="1" HorizontalOptions="Center" VerticalOptions="Center" RowSpacing="1" ColumnSpacing="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="17"/>
<ColumnDefinition Width="17"/>
<ColumnDefinition Width="17"/>
<ColumnDefinition Width="17"/>
<ColumnDefinition Width="17"/>
<ColumnDefinition Width="17"/>
<ColumnDefinition Width="17"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="17"/>
<RowDefinition Height="17"/>
</Grid.RowDefinitions>
<Label Grid.Row="0" Grid.Column="0" Text="M" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Row="0" Grid.Column="1" Text="T" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Row="0" Grid.Column="2" Text="W" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Row="0" Grid.Column="3" Text="T" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Row="0" Grid.Column="4" Text="F" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Row="0" Grid.Column="5" Text="S" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Row="0" Grid.Column="6" Text="S" VerticalOptions="Center" HorizontalOptions="Center"/>
<BoxView Grid.Row="1" Grid.Column="0" VerticalOptions="Center" HorizontalOptions="Center"/>
<BoxView Grid.Row="1" Grid.Column="1" VerticalOptions="Center" HorizontalOptions="Center"/>
<BoxView Grid.Row="1" Grid.Column="2" VerticalOptions="Center" HorizontalOptions="Center"/>
<BoxView Grid.Row="1" Grid.Column="3" VerticalOptions="Center" HorizontalOptions="Center"/>
<BoxView Grid.Row="1" Grid.Column="4" VerticalOptions="Center" HorizontalOptions="Center"/>
<BoxView Grid.Row="1" Grid.Column="5" VerticalOptions="Center" HorizontalOptions="Center"/>
<BoxView Grid.Row="1" Grid.Column="6" VerticalOptions="Center" HorizontalOptions="Center"/>
</Grid>
В основном я планирую отображать DaysOfWeek в полях и окрашивать их в красный или зеленый цвет в зависимости отдень находится в DaysOfWeek.
Я думаю, что для установки цвета мне нужно использовать конвертер, который проверяет дни, содержащиеся в списке (DaysOfWeek), и возвращает зеленый, если так, красный в противном случае.Это правильно?
Как мне установить привязки?Как указать и на элемент списка внутри списка?
В настоящее время у меня достаточно проблем, чтобы связать другие свойства класса 2 или класса 1 с помощью MVVM.
Есть идеи?