public static void EditWindow(ObjectId groupId) { Document doc = AcAp.Application.DocumentManager.MdiActiveDocument; Database db = doc.Database; Group group = null; Ballon ballon = null; using (Transaction acTrans = db.TransactionManager.StartTransaction()) { try { group = acTrans.GetObject(groupId, OpenMode.ForWrite) as Group; acTrans.Commit(); } catch (System.Exception) { acTrans.Abort(); } } if (group != null) { ballon = ReadBallonFromBuffer(group.XData); ViewBallon viewBallon = new ViewBallon(); BallonViewModel ballonViewModel = new BallonViewModel(); ballonViewModel.BallonObjectId = groupId; ballonViewModel.MyBallon = ballon; viewBallon.DataContext = ballonViewModel; ballonViewModel.GetData = new RelayCommand(EditDataInvoke); ballonViewModel.Layers = DatabaseHelper.GetAllLayerFromCad(); AcAp.Application.ShowModalWindow(viewBallon); } }
public void ShowWindow() { try { ViewBallon viewBallon = new ViewBallon(); BallonViewModel ballonViewModel = new BallonViewModel(); ballonViewModel.GetData = new RelayCommand(GetDataInvoke); viewBallon.DataContext = ballonViewModel; ballonViewModel.Layers = DatabaseHelper.GetAllLayerFromCad(); if (ballonViewModel.Layers != null && ballonViewModel.Layers.Count > 0) { ballonViewModel.LayerName = ballonViewModel.Layers.ElementAt(0); } AcAp.Application.ShowModalWindow(viewBallon); } catch (Exception e) { AcAp.Application.DocumentManager.MdiActiveDocument.Editor.WriteMessage(e.Message); } }