- XamlPatterns_v1.1.0.0.zip
- Controls
- Core
- docu
- Program
- Pub
- Desktop.Debug
- Itenso.Community.XamlPatterns.Controls.dll
- Itenso.Community.XamlPatterns.dll
- Desktop.Release
- Itenso.Community.XamlPatterns.Controls.dll
- Itenso.Community.XamlPatterns.dll
- Silverlight.Debug
- Itenso.Community.XamlPatterns.Controls.dll
- Itenso.Community.XamlPatterns.dll
- Silverlight.Release
- Itenso.Community.XamlPatterns.Controls.dll
- Itenso.Community.XamlPatterns.dll
- WindowsPhone.Debug
- Itenso.Community.XamlPatterns.Controls.dll
- Itenso.Community.XamlPatterns.dll
- WindowsPhone.Release
- Itenso.Community.XamlPatterns.Controls.dll
- Itenso.Community.XamlPatterns.dll
- XamlPatterns.Desktop.sln
- XamlPatterns.Desktop.suo
- XamlPatterns.Silverlight.sln
- XamlPatterns.Silverlight.suo
- XamlPatterns.WindowsPhone.sln
- XamlPatterns.WindowsPhone.suo
|
// -- FILE ------------------------------------------------------------------
// name : TypeCollectionModel.cs
// project : Itenso Community
// created : Jani Giannoudis - 2012.05.05
// language : c#
// environment: .NET 4.0
// copyright : (c) 2004-2012 by Itenso GmbH, Switzerland
// --------------------------------------------------------------------------
using System;
using System.Reflection;
namespace Itenso.Community.XamlPatterns.Program.Examples.AssemblyBrowser.ViewModel
{
// ------------------------------------------------------------------------
public class TypeCollectionModel : ReflectionCollectionModel
{
// ----------------------------------------------------------------------
public enum TypeMode
{
AllTypes,
ExportedTypes,
} // enum TypeMode
// ----------------------------------------------------------------------
public TypeCollectionModel( ReflectionModel parent, string name, Assembly assembly, TypeMode mode ) :
base( parent, name )
{
this.assembly = assembly;
this.mode = mode;
} // TypeCollectionModel
// ----------------------------------------------------------------------
public Assembly Assembly
{
get { return assembly; }
} // Assembly
// ----------------------------------------------------------------------
public TypeMode Mode
{
get { return mode; }
} // Mode
// ----------------------------------------------------------------------
protected override bool LoadAsync
{
get { return true; }
} // LoadAsync
// ----------------------------------------------------------------------
protected override bool DoLoad()
{
switch ( mode )
{
case TypeMode.AllTypes:
foreach ( Type assemblyType in assembly.GetTypes() )
{
Children.Add( new TypeModel( this, assemblyType ) );
}
break;
case TypeMode.ExportedTypes:
foreach ( Type assemblyType in assembly.GetExportedTypes() )
{
Children.Add( new TypeModel( this, assemblyType ) );
}
break;
}
return true;
} // DoLoad
// ----------------------------------------------------------------------
// members
private readonly Assembly assembly;
private readonly TypeMode mode;
} // class TypeCollectionModel
} // namespace Itenso.Community.XamlPatterns.Program.Examples.AssemblyBrowser.ViewModel
// -- EOF -------------------------------------------------------------------
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
👨 Senior .NET Software Engineer
🚀 My Open Source Projects
-
Time Period Library 👉
GitHub
-
Payroll Engine 👉
GitHub
Feedback and contributions are welcome.