private void ChangeItemsVisibility(int startIndex, int endIndex, bool setSelected)
{
Visibility tmpVisibility = Visibility.Visible;
for (int i = startIndex; i <= endIndex; i++)
{
var item = ContainerFromIndex(i) as CatrobatListViewItem;
if (item == null)
{
continue;
}
if (i == startIndex)
{
tmpVisibility = item.Visibility == Visibility.Visible ? Visibility.Collapsed : Visibility.Visible;
}
if (item.IsGrouped)
{
i = GetEndBrickIndex(item.Content);
}
if (setSelected)
{
if (!SmartSelectedItems.Contains(item.Content))
{
SmartSelectedItems.Add(item.Content);
}
}
else
{
SmartSelectedItems.Remove(item.Content);
}
item.Visibility = tmpVisibility;
}
}