|
// -- FILE ------------------------------------------------------------------
// name : LookupCollector.cs
// project : Itenso Web User Forms
// created : Jani Giannoudis - 2008.10.30
// language : c#
// environment: .NET 2.0
// copyright : (c) 2008-2012 by Itenso GmbH, Switzerland
// --------------------------------------------------------------------------
using System.Collections.Generic;
using System.Web.UI;
namespace Itenso.WebUserForms.Controls
{
// ------------------------------------------------------------------------
public class CommandCollector : UserFormVisitor
{
// ----------------------------------------------------------------------
public CommandCollector( Control startControl )
: base( startControl )
{
} // LookupCollector
// ----------------------------------------------------------------------
public List<IUserFormCommand> Commands
{
get { return this.commands; }
} // Commands
// ----------------------------------------------------------------------
public void Collect()
{
this.commands.Clear();
Start();
} // Collect
// ----------------------------------------------------------------------
public static List<IUserFormCommand> Collect( Control startControl )
{
CommandCollector lookupFieldCollector = new CommandCollector( startControl );
lookupFieldCollector.Collect();
return lookupFieldCollector.Commands;
} // Collect
// ----------------------------------------------------------------------
protected override void VisitFormCommand( Control control,
IUserFormCommand formCommand, IUserFormHeader formHeader )
{
this.commands.Add( formCommand );
} // VisitLookupFormField
// ----------------------------------------------------------------------
// members
private readonly List<IUserFormCommand> commands = new List<IUserFormCommand>();
} // class LookupCollector
} // namespace Itenso.WebUserForms.Controls
// -- 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.