Я просто стремлюсь отменить логическое значение моей ObservableCollection под названием ActiviteCollection.
Это логическое значение автоматически определяется как False (0), но когда я нажимаю кнопку, некоторые логические значения становятся истинными. Это обратное мне не удается сделать, и я ничего подобного в сети не нашел.
Заранее спасибо за помощь.
Я могу отредактировать свое сообщение, если вам нужен какой-то код, но общий способ изменения логического значения ObservableCollection должен быть достаточным, чтобы помочь мне найти то, к чему я стремлюсь.
Это сценарий для кнопки, которая меняет логическое значение на противоположное:
private void click_PrisEnCompte(object sender, RoutedEventArgs e)
{
var viewModel = (ViewModel)(sender as System.Windows.Controls.ListBoxItem).DataContext;
foreach (var data in DonneesBrutes.SelectedItems)
{
if(viewModel.ActiviteCollection.Any(c => c.PMRQTOTMActivite == DonneesBrutes.CurrentItem.ToString()))
{
var reversedCollection = viewModel.ActiviteCollection.Select(t => !t);
}
}
}
Этот сценарий в настоящее время не работает, произошла ошибка при выборе: The type Arguments for method ... cannot be inferred for the usage.
и на! T Cannot apply Operator ! to operand of type.....
4 ответа
foreach (var data in DonneesBrutes.SelectedItems)
{
foreach (var item in viewModel.ActiviteCollection.Where(c => c.PMRQTOTMActivite == DonneesBrutes.CurrentItem.ToString()))
{
item.MyBoolean = !item.MyBoolean;
}
}
bool b = false;
b = !b; //Inverted!!
В наблюдаемой коллекции
ObservableCollection<Bool> BooleanList;
foreach(bool b in BooleanList)
b = !b;
Следующее будет "перевернуть" каждый элемент в вашей коллекции:
var reversedCollection = from t in ActiviteCollection select !t;
var reversedCollection = viewModel.ActiviteCollection.Select(t => !t);
, что является способом LinQ, у меня возникает ошибка в Select. Я отредактирую свой вопрос с помощью своего buttonClickEvent
var reversedCollection = from bool t in ActiviteCollection select !t;
Если вы хотите "перевернуть" логическое значение по заданному индексу, можете сделать это:
ActiviteCollection[index] = !ActiviteCollection[index];
viewModel.ActiviteCollection[Flag] = !viewModel.ActiviteCollection[Flag];
, не удается разрешить флаг символа. Флаг - это логическое значение, которое я хочу изменить
Похожие вопросы
Новые вопросы
c#
C# (произносится как «see Sharp») — это высокоуровневый мультипарадигменный язык программирования со статической типизацией, разработанный Microsoft. Код C# обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, которое включает в себя .NET, .NET Framework, .NET MAUI и Xamarin среди прочих. Используйте этот тег для ответов на вопросы о коде, написанном на C#, или о формальной спецификации C#.
var a = true;
a=!a;
public ObservableCollection<Activite> ActiviteCollection { get; set; }
ActiviteCollection = new ObservableCollection<Activite>(_BDDInterneEntities.Activite);
public partial class Activite { public string PMRQTOTMActivite { get; set; } public Nullable<bool> Flag { get; set; } }