本文整理汇总了C#中System.Collections.ObservableCollection.LastOrDefault方法的典型用法代码示例。如果您正苦于以下问题:C# ObservableCollection.LastOrDefault方法的具体用法?C# ObservableCollection.LastOrDefault怎么用?C# ObservableCollection.LastOrDefault使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Collections.ObservableCollection
的用法示例。
在下文中一共展示了ObservableCollection.LastOrDefault方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Initialize
public void Initialize(XZone zone)
{
Zone = zone;
var devices = new HashSet<XDevice>();
var availableDevices = new HashSet<XDevice>();
foreach (var device in XManager.Devices)
{
if (device.Driver.HasLogic)
{
foreach (var clause in device.DeviceLogic.Clauses)
{
foreach (var clauseZone in clause.Zones)
{
if (clauseZone.UID == zone.UID)
{
devices.Add(device);
}
}
}
}
if (device.Driver.HasZone)
{
if (device.ZoneUIDs.Contains(Zone.UID))
{
devices.Add(device);
}
else
{
if (device.ZoneUIDs.Count == 0)
{
availableDevices.Add(device);
}
}
}
}
Devices = new ObservableCollection<ZoneDeviceViewModel>();
foreach (var device in devices)
{
var deviceViewModel = new ZoneDeviceViewModel(device)
{
IsBold = device.ZoneUIDs.Contains(Zone.UID)
};
Devices.Add(deviceViewModel);
}
var selectedDevice = Devices.LastOrDefault();
AvailableDevices = new ObservableCollection<ZoneDeviceViewModel>();
foreach (var device in availableDevices)
{
if ((device.DriverType == XDriverType.GKIndicator) ||
(device.DriverType == XDriverType.GKLine) ||
(device.DriverType == XDriverType.GKRele) ||
(device.DriverType == XDriverType.KAUIndicator))
continue;
var deviceViewModel = new ZoneDeviceViewModel(device)
{
IsBold = device.Driver.HasZone
};
AvailableDevices.Add(deviceViewModel);
}
var selectedAvailableDevice = AvailableDevices.LastOrDefault();
//AvailableDevices = new ObservableCollection<ZoneDeviceViewModel>(AvailableDevices.Where(x => x.Device.Parent == null));
OnPropertyChanged(() => Devices);
OnPropertyChanged(() => AvailableDevices);
SelectedDevice = selectedDevice;
SelectedAvailableDevice = selectedAvailableDevice;
}