void OnResolveName(object sender, ResolveNameEventArgs e) { if (this.resolveNameEventHandler != null) { this.resolveNameEventHandler(this, e); } }
/// <summary>Retrieves an instance of a created object of the specified name.</summary> /// <returns>An instance of the object with the given name, or null if no object by that name can be found.</returns> /// <param name="name">The name of the object to retrieve.</param> /// <exception cref="T:System.ArgumentNullException"> /// <paramref name="name" /> is null.</exception> /// <exception cref="T:System.InvalidOperationException">This property was accessed outside of a serialization session.</exception> object IDesignerSerializationManager.GetInstance(string name) { object obj = null; if (name == null) { throw new ArgumentNullException("name"); } this.CheckSession(); if (this.instancesByName != null) { obj = this.instancesByName[name]; } if (obj == null && this.PreserveNames && this.Container != null) { obj = this.Container.Components[name]; } if (obj == null) { ResolveNameEventArgs resolveNameEventArgs = new ResolveNameEventArgs(name); this.OnResolveName(resolveNameEventArgs); obj = resolveNameEventArgs.Value; } return(obj); }
public void Ctor_Name(string name) { var eventArgs = new ResolveNameEventArgs(name); Assert.Same(name, eventArgs.Name); Assert.Null(eventArgs.Value); }
/// Retrieves an instance of a created object of the given name, or /// null if that object does not exist. object IDesignerSerializationManager.GetInstance(string name) { object instance = null; if (name == null) { throw new ArgumentNullException("name"); } // Check our local nametable first // if (_instancesByName != null) { instance = _instancesByName[name]; } if (instance == null && _loader.LoaderHost != null) { instance = _loader.LoaderHost.Container.Components[name]; } if (instance == null && _resolveNameEventHandler != null) { ResolveNameEventArgs e = new ResolveNameEventArgs(name); _resolveNameEventHandler(this, e); instance = e.Value; } return(instance); }
private object RequestInstance(string name) { ResolveNameEventArgs args = new ResolveNameEventArgs(name); this.OnResolveName(args); return(args.Value); }
protected virtual void OnResolveName(ResolveNameEventArgs e) { if (_resolveNameHandler != null) { _resolveNameHandler(this, e); } }
protected virtual void OnResolveName(ResolveNameEventArgs e) { if (ResolveName != null) { ResolveName(this, e); } }
//<Snippet1> public ResolveNameEventArgs CreateResolveNameEventArgs(object value, string name) { ResolveNameEventArgs e = new ResolveNameEventArgs(name); // The name to resolve e.Name // Stores an object matching the name e.Value return(e); }
public void Value_Set_GetReturnsExpected(object value) { var eventArgs = new ResolveNameEventArgs("Name") { Value = value }; Assert.Same(value, eventArgs.Value); }
/// <include file='doc\DesignerSerializationObject.uex' path='docs/doc[@for="DesignerSerializationObject.GetInstance"]/*' /> /// <devdoc> /// Retrieves an instance of a created object of the given name, or /// null if that object does not exist. /// </devdoc> object IDesignerSerializationManager.GetInstance(string name) { object instance = null; if (name == null) { throw new ArgumentNullException("name"); } // Check our local nametable first // if (instancesByName != null) { instance = instancesByName[name]; } // Check our own stuff here. // if (instance == null && name.Equals("components")) { // We implement the IContainer here // instance = this; } if (instance == null && resolveNameEventHandler != null) { ResolveNameEventArgs e = new ResolveNameEventArgs(name); resolveNameEventHandler(this, e); instance = e.Value; } // okay, fine, we're just a failure. we can't do anything right. // ask the designer's actual manager if it's heard of this guy. // if (instance == null && manager != null) { instance = manager.GetInstance(name); } if (instance == null) { IReferenceService refSvs = (IReferenceService)((IServiceProvider)this).GetService(typeof(IReferenceService)); if (refSvs != null) { instance = refSvs.GetReference(name); } } return(instance); }
object IDesignerSerializationManager.GetInstance(string name) { object instance = null; if (name == null) { throw new ArgumentNullException("name"); } if (this._instancesByName != null) { instance = this._instancesByName[name]; } if ((instance == null) && (this._loader.LoaderHost != null)) { instance = this._loader.LoaderHost.Container.Components[name]; } if ((instance == null) && (this.ResolveName != null)) { ResolveNameEventArgs e = new ResolveNameEventArgs(name); this.ResolveName(this, e); instance = e.Value; } return(instance); }
/// <summary> /// Extends BeginInvoke so that when a state object is not needed, null does not need to be passed. /// <example> /// resolvenameeventhandler.BeginInvoke(sender, e, callback); /// </example> /// </summary> public static IAsyncResult BeginInvoke(this ResolveNameEventHandler resolvenameeventhandler, Object sender, ResolveNameEventArgs e, AsyncCallback callback) { if (resolvenameeventhandler == null) { throw new ArgumentNullException("resolvenameeventhandler"); } return(resolvenameeventhandler.BeginInvoke(sender, e, callback, null)); }
/// <summary>Raises the <see cref="E:System.ComponentModel.Design.Serialization.IDesignerSerializationManager.ResolveName" /> event. </summary> /// <param name="e">A <see cref="T:System.ComponentModel.Design.Serialization.ResolveNameEventArgs" /> that contains the event data. </param> protected virtual void OnResolveName(ResolveNameEventArgs e) { this.resolveNameEventHandler?.Invoke(this, e); }
private void OnResolveName(object sender, ResolveNameEventArgs e) { // Displays ResolveName event information on the console. Console.WriteLine("Name of the name to resolve: " + e.Name); Console.WriteLine("ToString output of the object that no name was resolved for: " + e.Value.ToString()); }
public void DesignerSerializationManager_OnResolveName_InvokeWithResolveName_CallsHandler(ResolveNameEventArgs eventArgs) { var manager = new SubDesignerSerializationManager(); int callCount = 0; ResolveNameEventHandler handler = (sender, e) => { Assert.Same(manager, sender); Assert.Same(eventArgs, e); callCount++; }; IDisposable session = manager.CreateSession(); manager.ResolveName += handler; manager.OnResolveName(eventArgs); Assert.Equal(1, callCount); session.Dispose(); // Call again. session = manager.CreateSession(); manager.OnResolveName(eventArgs); Assert.Equal(1, callCount); session.Dispose(); // Remove handler. session = manager.CreateSession(); manager.ResolveName += handler; manager.ResolveName -= handler; Assert.Equal(1, callCount); session.Dispose(); }