public void AddWeakEvent_Result_AddDevice(Delegate_OnResult_AddDevice d)
 {
     WeakList_AddDevice.Add(new WeakReference(d));
 }
 public void RemoveWeakEvent_Result_AddDevice(Delegate_OnResult_AddDevice d)
 {
     WeakReference[] WR = (WeakReference[])WeakList_AddDevice.ToArray(typeof(WeakReference));
        foreach(WeakReference W in WR)
        {
        if(W.IsAlive)
        {
           if((Delegate_OnResult_AddDevice)W.Target == d)
           {
                    WeakList_AddDevice.Remove(W);
                       break;
           }
        }
        }
 }
 public void AddDevice(System.String Sender, System.String DeviceUDN, object _Tag, Delegate_OnResult_AddDevice _Callback)
 {
     UPnPArgument[] args = new UPnPArgument[2];
        args[0] = new UPnPArgument("Sender", Sender);
        args[1] = new UPnPArgument("DeviceUDN", DeviceUDN);
        _S.InvokeAsync("AddDevice", args, new object[2]{_Tag,_Callback},new UPnPService.UPnPServiceInvokeHandler(Sink_AddDevice), new UPnPService.UPnPServiceInvokeErrorHandler(Error_Sink_AddDevice));
 }