Esempio n. 1
0
        private void control_DragDrop(object sender, DragEventArgs e)
        {
            SetMousePosition(e);

            IInstancingContext instancingContext = AdaptedControl.ContextAs <IInstancingContext>();

            if (instancingContext != null &&
                instancingContext.CanInsert(e.Data))
            {
                try
                {
                    m_isDropping = true;

                    string name = "Drag and Drop".Localize();

                    ITransactionContext transactionContext = AdaptedControl.ContextAs <ITransactionContext>();
                    transactionContext.DoTransaction(
                        delegate
                    {
                        instancingContext.Insert(e.Data);

                        if (m_statusService != null)
                        {
                            m_statusService.ShowStatus(name);
                        }
                    }, name);

                    AdaptedControl.Focus();
                }
                finally
                {
                    m_isDropping = false;
                }
            }
        }