双击CAD对象,显示自定义对话框实现方法

    class TlsApplication : IExtensionApplication

    {

        void IExtensionApplication.Initialize()

        {

            TTest.Start();

        }

        void IExtensionApplication.Terminate()

        {

        }

    }

    class TTest

    {

        static bool m_Veto = false;

        public static void Start()

        {

            Application.DocumentManager.DocumentLockModeChanged += new DocumentLockModeChangedEventHandler(vetoCommand);

            Application.BeginDoubleClick += new BeginDoubleClickEventHandler(beginDoubleClick);

        }

        static void beginDoubleClick(object sender, BeginDoubleClickEventArgs e)

        {

            Document doc = Application.DocumentManager.MdiActiveDocument;

            Editor ed = doc.Editor;

            PromptSelectionResult res = ed.SelectImplied();

            SelectionSet ss = res.Value;

            if (ss != null)

            {

                if (ss.Count == 1)

                {

                    using (Transaction tr = doc.TransactionManager.StartTransaction())

                    {

                        Line line = tr.GetObject(ss[0].ObjectId, OpenMode.ForRead) as Line;

                        if (line != null)

                        {

                            ResultBuffer rb = line.GetXDataForApplication("MyApp");

                            if (rb != null)

                            {

                                m_Veto = true;

                            }

                        }

                    }

                }

            }

        }

        static void vetoCommand(object sender, DocumentLockModeChangedEventArgs e)

        {

            if (e.GlobalCommandName.ToLower() == "properties")

            {

                if (m_Veto)

                {

                    e.Veto();

                   

                    Application.ShowAlertDialog("hello");

                    m_Veto = false;

                }

            }

        }

    }

posted @ 2013-12-07 22:22  Cad人生  阅读(2027)  评论(1编辑  收藏  举报