【发布时间】:2021-04-22 00:45:43
【问题描述】:
我正在尝试修改此代码。我需要检查 FilteredCheckObservable 的特定元素中的值,如果为真,则更改该元素另一部分的值。
基本上是这样的
if (FilteredCheckObservable items.Lang = 'ENG')
{items.check = newcheckname;}
然后这将更新 sourceGroups 集合。
if (string.IsNullOrEmpty(departmentLine.LineID) || string.IsNullOrEmpty(departmentLine.LineName))
continue;
bool discovered = false;
foreach (var group in sourceGroups)
{
if (!group.Key.Line.IsEqual(departmentLine))
continue;
group.Key.IsDiscovered = true;
discovered = true;
group.Key.ScheduleStatusCount = group.CountGroupItem;
break;
}
if (discovered == false)
{
var _ScheduleItemObservable = new ScheduleItemObservable(departmentLine, MainViewViewModel, Shift.ToString());
var item = new Grouping<ScheduleItemObservable, FilteredCheckObservable>(_ScheduleItemObservable);
if (IsShiftValid)
{
item.Key.Shift = Shift.ToString();
item.Key.IsHistoryEnabled = true;
}
sourceGroups.Add(item);
}
for (int index = 0; index < sourceGroups.Count; index++)
{
if (sourceGroups[index].Key.IsDiscovered == true)
{
foreach (var group in sourceGroups)
{
foreach (FilteredCheckObservable items in group)
{
if (items.Lang_ID == LanguageService.Instance.LanguageType.ToString())
{
sourceGroups.Clear();
sourceGroups.Add(item);
}
}
}
}
}
【问题讨论】:
-
为了清楚起见,您能否只保留与该问题相关的代码,让不知道您的代码的人在不知道上下文和链接的情况下看到一堆代码可能会感到困惑之间。
-
我很抱歉。第一个 sn-p 是通过 sourceGroups.Add() 构建集合的功能代码。第二次 sn-p 是我操纵收藏的糟糕尝试。感谢您的帮助。
-
这是一个通用的 C# 问题,与 Xamarin 无关