Calls to SelectElement/SelectElements/SelectAllElements methods of IGraphicsContainerSelect Interface do not show up on pagelayout control in an ArcEngine Application.
上次发布: August 25, 2014No Product Found
漏洞 ID 编号
NIM004298
已提交
September 21, 2006
上次修改时间
June 5, 2024
适用范围
No Product Found
找到的版本
9.2 Pre
状态
Will Not Be Addressed
开发团队已考虑过该问题或请求,并决定不会解决该问题。 问题的“其他信息”部分可能包含进一步说明。
附加信息
We apologize that we were unable to address this issue within the current product support cycle. If the issue continues to affect your work in a supported release, please contact Technical Support.
解决办法
//*************** WORK AROUND 1 /* If the operation is performed on Mousedown event of pagelayout control then, activating Select Tool on MouseDown makes it work.Add the following code before calling selectelements method.This workaround to be used only if the operation is done directly on Pagelayout control i.e element is selected on mouse down on pagelayout Control. If you have any custom tool to do the job, work around 1 will not work. Use Workaround 2.ICommand command = new ControlsSelectToolClass();command.OnCreate(axLayout.Object);if (command.Enabled == true){axLayout.CurrentTool= (ITool) command; }*////********* Workaround1 ends hereWORK AROUND 2 : This workaround works in all cases,if operation is a done on mouse down of custom tool or on mousedown of pagelayout control.Add following code after making a call to selectElements method.USE Selection tracker to select each elememt in graphic container selection. ISelectionTracker pSelTrack; IDisplay pDisp;pDisp= pActiveView.ScreenDisplay;IElement oElem;enumElement.Reset(); oElem=enumElement.Next();while (oElem !=null){ pSelTrack =oElem.SelectionTracker;pDisp.StartDrawing(pDisp.hDC,0); pSelTrack.Draw(pDisp,pDisp.hDC,esriTrackerStyle.esriTrackerDominant);pDisp.FinishDrawing();oElem=enumElement.Next();} ///********* Workaround2 ends here