Inheritance: System.EventArgs
Example #1
0
 void definitions_DefinitionResolving(object sender, DefinitionEventArgs e)
 {
     if (e.AffectedItem != null)
     {
         var t = GetTemplate(e.AffectedItem);
         if (t != null)
             e.Definition = t.Definition;
     }
 }
Example #2
0
        void definitions_DefinitionResolving(object sender, DefinitionEventArgs e)
        {
			if (e == null)
				throw new ArgumentNullException("e");
            if (e.AffectedItem != null)
            {
                var t = GetTemplate(e.AffectedItem);
                if (t != null)
                    e.Definition = t.Definition;
            }
        }
Example #3
0
        /// <summary>Gets item definition for a certain discriminator.</summary>
        /// <param name="discriminator">The discriminator/name that uniquely identifies a certain type.</param>
        /// <returns>The definition matching the string.</returns>
        public virtual ItemDefinition GetDefinition(string discriminator)
        {
            if (discriminator == null)
            {
                throw new ArgumentNullException("discriminator");
            }

            var definitionTemplatePair = discriminator.Split('/');

            var e = new DefinitionEventArgs();

            if (definitionTemplatePair.Length > 1)
            {
                foreach (ItemDefinition definition in GetDefinitions())
                {
                    if (definition.Discriminator == definitionTemplatePair[0] && definition.TemplateKey == definitionTemplatePair[1])
                    {
                        e.Definition = definition;
                    }
                }
            }
            else
            {
                foreach (ItemDefinition definition in GetDefinitions())
                {
                    if (definition.Discriminator == discriminator)
                    {
                        e.Definition = definition;
                    }
                }
            }

            if (DefinitionResolving != null)
            {
                DefinitionResolving(this, e);
            }

            return(e.Definition);
        }