Ejemplo n.º 1
0
        private void OnCollectionWasChanged(
            Action action, DataObject dataObject)
        {
            KeyedCollectionWasChangedEventArgs <DataObject> args =
                new KeyedCollectionWasChangedEventArgs <DataObject>(action, dataObject);
            EventHandler <KeyedCollectionWasChangedEventArgs <DataObject> > handler =
                CollectionWasChanged;

            if (handler != null)
            {
                foreach (EventHandler <KeyedCollectionWasChangedEventArgs <DataObject> > SingleCast
                         in handler.GetInvocationList())
                {
                    System.ComponentModel.ISynchronizeInvoke syncInvoke =
                        SingleCast.Target as System.ComponentModel.ISynchronizeInvoke;

                    try
                    {
                        if ((syncInvoke != null) && (syncInvoke.InvokeRequired))
                        {
                            syncInvoke.Invoke(SingleCast, new Object[] { this, args });
                        }
                        else
                        {
                            SingleCast(this, args);
                        }
                    }
                    catch
                    { throw; }
                }
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Обработчик изменения коллекции
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 public void EventHandlerDevicesCollectionWasChanged(
     object sender, KeyedCollectionWasChangedEventArgs <DeviceBase> e)
 {
     // В случае изменения коллекции переопределяем контекст
     lock (_SyncRoot)
     {
         _Context = new Context(_NetworkController.Devices.ToArray());
     }
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Обработчик изменения коллекции
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 public void EventHandlerDevicesCollectionWasChanged(
     object sender, KeyedCollectionWasChangedEventArgs<DeviceBase> e)
 {
     // В случае изменения коллекции переопределяем контекст
     lock (_SyncRoot)
     {
         _Context = new Context(_NetworkController.Devices.ToArray());
     }
 }
Ejemplo n.º 4
0
        /// <summary>
        /// Обработчик события изменения списка устройств
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void EventHandler_DevicesListWasChanged(
            object sender, KeyedCollectionWasChangedEventArgs <DeviceBase> e)
        {
            switch (e.Action)
            {
            case Action.Adding:
            {
                // Если добавляется устройство подключем его события
                //e.Item.DataWasChanged += DeviceChangedData;
                //e.Item.DeviceChangedStatus += DeviceChangedData;
                break;
            }

            case Action.Removing:
            {
                // Если удаляется устройство отключаем его события
                //e.Item.DataWasChanged -= DeviceChangedData;
                //e.Item.DeviceChangedStatus -= DeviceChangedStatus;
                break;
            }
            }
        }
Ejemplo n.º 5
0
 /// <summary>
 /// Обработчик события изменения кол-ва устройств
 /// в сети
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void EventHandlerDevicesAmountWasChanged(
     object sender, KeyedCollectionWasChangedEventArgs <DeviceBase> e)
 {
     return;
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Обработчик события изменения кол-ва устройств
 /// в сети
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void EventHandlerDevicesAmountWasChanged(
     object sender, KeyedCollectionWasChangedEventArgs<DeviceBase> e)
 {
     return;
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Обработчик события изменения списка устройств
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void EventHandler_DevicesListWasChanged(
     object sender, KeyedCollectionWasChangedEventArgs<DeviceBase> e)
 {
     switch (e.Action)
     {
         case Action.Adding:
             {
                 // Если добавляется устройство подключем его события
                 //e.Item.DataWasChanged += DeviceChangedData;
                 //e.Item.DeviceChangedStatus += DeviceChangedData;
                 break;
             }
         case Action.Removing:
             {
                 // Если удаляется устройство отключаем его события
                 //e.Item.DataWasChanged -= DeviceChangedData;
                 //e.Item.DeviceChangedStatus -= DeviceChangedStatus;
                 break;
             }
     }
 }