Пример #1
0
        public void Invoke(RowInvokeType type, EventArgs e)
        {
            switch (type)
            {
            case RowInvokeType.Added:
                this.OnAdded(e);
                break;

            case RowInvokeType.Deleted:
                this.OnDeleted(e);
                break;

            case RowInvokeType.Deleting:
                this.OnDeleting((CancelEventArgs)e);
                break;

            case RowInvokeType.Edited:
                this.OnEdited(e);
                break;

            case RowInvokeType.Loaded:
                this.OnLoaded(e);
                break;

            case RowInvokeType.Saved:
                this.OnSaved(e);
                break;
            }

            RowInvokerAttribute.Invoke(type, this, e);
        }
Пример #2
0
            public void Invoke(RowInvokeType invokeType, object sender, EventArgs e)
            {
                switch (invokeType)
                {
                // case RowInvokeType.Created:
                //     if(this.onCreated != null)
                //          this.onCreated.Invoke(this.invoker, new object[] { sender, e });
                //      break;
                case RowInvokeType.Added:
                    if (this.onAdded != null)
                    {
                        this.onAdded.Invoke(this.invoker, new object[] { sender, e });
                    }
                    break;

                case RowInvokeType.Deleting:
                    if (this.onDeleting != null)
                    {
                        this.onDeleting.Invoke(this.invoker, new object[] { sender, e });
                    }
                    break;

                case RowInvokeType.Deleted:
                    if (this.onDeleted != null)
                    {
                        this.onDeleted.Invoke(this.invoker, new object[] { sender, e });
                    }
                    break;

                case RowInvokeType.Edited:
                    if (this.onEdited != null)
                    {
                        this.onEdited.Invoke(this.invoker, new object[] { sender, e });
                    }
                    break;

                case RowInvokeType.Loaded:
                    if (this.onLoaded != null)
                    {
                        this.onLoaded.Invoke(this.invoker, new object[] { sender, e });
                    }
                    break;

                case RowInvokeType.Saved:
                    if (this.onSaved != null)
                    {
                        this.onSaved.Invoke(this.invoker, new object[] { sender, e });
                    }
                    break;
                }
            }
Пример #3
0
        public static void Invoke(RowInvokeType type, object sender, EventArgs e)
        {
            var t = sender.GetType();

            if (typeof(RowBase).IsAssignableFrom(t))
            {
                checkCache();
                var types = GetBaseTypes(t);
                for (int i = types.Length - 1; i >= 0; i--)
                {
                    var t2 = types[i];
                    if (__cache__.ContainsKey(t2))
                    {
                        foreach (var info in __cache__[t2])
                        {
                            info.Invoke(type, sender, e);
                        }
                    }
                }
            }
        }