Files
ZuneShell.dll/ZuneShell/ZuneUI/ListReleaseBehaviorManager.cs
T

39 lines
1.3 KiB
C#

// Decompiled with JetBrains decompiler
// Type: ZuneUI.ListReleaseBehaviorManager
// Assembly: ZuneShell, Version=4.7.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
// MVID: FC8028F3-A47B-4FB4-B35B-11D1752D8264
// Assembly location: C:\Program Files\Zune\ZuneShell.dll
using Microsoft.Iris;
using MicrosoftZuneLibrary;
using System.Collections;
namespace ZuneUI
{
public class ListReleaseBehaviorManager
{
private LibraryVirtualList _virtualList;
private ReleaseBehavior _cachedBehavior;
public void KeepItemsInMemory(IList list)
{
if (list == null || list.Count <= 0)
return;
LibraryVirtualList owner = ((LibraryDataProviderListItem)list[0]).GetOwner();
if (owner.VisualReleaseBehavior != ReleaseBehavior.ReleaseReference)
return;
this._cachedBehavior = owner.VisualReleaseBehavior;
owner.VisualReleaseBehavior = ReleaseBehavior.KeepReference;
this._virtualList = owner;
}
public void RestoreDefaultBehavior()
{
if (this._virtualList == null)
return;
this._virtualList.VisualReleaseBehavior = this._cachedBehavior;
this._virtualList = null;
}
}
}