public void SetObjects(object @object) { this.m_pMixedFormatGridLabel = @object as IMixedFontGridLabel2; this.m_pNumberFormat = (this.m_pMixedFormatGridLabel as IFormattedGridLabel).Format; if (this.m_pNumberFormat == null) { this.m_pNumberFormat = new NumericFormatClass(); (this.m_pMixedFormatGridLabel as IFormattedGridLabel).Format = this.m_pNumberFormat; } }
public override IElement CreateElement(IPageLayout ipageLayout_0) { IElement element = null; IScaleText style; if (base.Style != null) { style = base.Style as IScaleText; } else { style = new ScaleTextClass(); } UIDClass class2 = new UIDClass { Value = "esriCarto.ScaleText" }; UID clsid = class2; IMapFrame frame = (ipageLayout_0 as IGraphicsContainer).FindFrame((ipageLayout_0 as IActiveView).FocusMap) as IMapFrame; style.MapUnits = frame.Map.DistanceUnits; style.PageUnits = ipageLayout_0.Page.Units; style.Style = esriScaleTextStyleEnum.esriScaleTextAbsolute; INumberFormat numberFormat = style.NumberFormat; if (numberFormat is INumericFormat) { (numberFormat as INumericFormat).RoundingOption = esriRoundingOptionEnum.esriRoundNumberOfDecimals; (numberFormat as INumericFormat).UseSeparator = false; (numberFormat as INumericFormat).RoundingValue = 0; style.NumberFormat = numberFormat; } element = frame.CreateSurroundFrame(clsid, style) as IElement; IEnvelope oldBounds = new EnvelopeClass(); IPoint position = this.GetPosition(ipageLayout_0); oldBounds.PutCoords(position.X, position.Y, position.X + 4.0, position.Y + 8.0); IEnvelope newBounds = new EnvelopeClass(); style.QueryBounds((ipageLayout_0 as IActiveView).ScreenDisplay, oldBounds, newBounds); oldBounds.PutCoords(position.X, position.Y, position.X + newBounds.Width, position.Y + newBounds.Height); element.Geometry = oldBounds; this.Element = element; return(element); }
private void btnProperty_Click(object sender, EventArgs e) { frmElementProperty property = new frmElementProperty { Text = "格网标注属性" }; bool flag = false; if (this.cboFormat.SelectedIndex == 0) { NumericFormatPropertyPage page = new NumericFormatPropertyPage(); property.AddPage(page); INumberFormat format = (this.pGridLabel as IFormattedGridLabel).Format; flag = property.EditProperties(format); if (flag) { (this.pGridLabel as IFormattedGridLabel).Format = format; } } else if (this.cboFormat.SelectedIndex == 1) { MixedLabelPropertyPage page2 = new MixedLabelPropertyPage(); property.AddPage(page2); flag = property.EditProperties(this.pGridLabel); } else { CornerGridLabelPropertyPage page3 = new CornerGridLabelPropertyPage(); property.AddPage(page3); PrincipalDigitsLabelPropertyPage page4 = new PrincipalDigitsLabelPropertyPage(); property.AddPage(page4); flag = property.EditProperties(this.pGridLabel); } if (flag) { this.m_IsPageDirty = true; if (this.OnValueChange != null) { this.OnValueChange(); } } }
private void btnok_Click(object sender, EventArgs e) { if (treeshow.SelectedIndex == 1) { ITinRenderer pRenderNew = new TinFaceRenderer() as ITinRenderer; ITinSingleSymbolRenderer pUVRenderer = pRenderNew as ITinSingleSymbolRenderer; ISimpleFillSymbol pSymbol = new SimpleFillSymbolClass(); pSymbol.Color = ClsGDBDataCommon.ColorToIColor(btncolor.SelectedColor); pUVRenderer.Symbol = pSymbol as ISymbol; pTLayer.ClearRenderers(); pTLayer.InsertRenderer(pRenderNew, 0); pTocContral.SetBuddyControl(pMapContral); pTocContral.Refresh(); pMapContral.Refresh(); if (bar3.SelectedDockTab == 2) { IActiveView pActiveView = pSceneControl.Scene as IActiveView; pActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, pTLayer, null); } this.Close(); } else { ITinRenderer pTinRenderer = new TinElevationRenderer() as ITinRenderer; //设置样式 if (pTinRenderer is ITinColorRampRenderer) { if (pTinRenderer.Name == "Elevation") { if (lowbreak.Count > 0) { int ClassCount = int.Parse(cmbclasses.SelectedItem.ToString()); ITinAdvanced pTinAdv = pTLayer.Dataset as ITinAdvanced; ITinColorRampRenderer pTinColorRampRenderer = pTinRenderer as ITinColorRampRenderer; IClassBreaksUIProperties pClassBreaksUIProperties = pTinRenderer as IClassBreaksUIProperties; INumberFormat pNumberFormat = pClassBreaksUIProperties.NumberFormat; pTinColorRampRenderer.MinimumBreak = lowbreak[0]; pTinColorRampRenderer.BreakCount = int.Parse(cmbclasses.SelectedItem.ToString()); ISimpleFillSymbol pSymbol = null; for (int j = 0; j < pTinColorRampRenderer.BreakCount; j++) { pClassBreaksUIProperties.set_LowBreak(j, lowbreak[j]); pTinColorRampRenderer.set_Break(j, highbreak[j]); //用于图层控制中分级标示显示 pTinColorRampRenderer.set_Label(ClassCount - j - 1, datagridsymbol.Rows[j].Cells[2].Value.ToString()); pSymbol = new SimpleFillSymbolClass(); pSymbol.Color = ClsGDBDataCommon.ColorToIColor(datagridsymbol.Rows[j].Cells[0].Style.BackColor); pTinColorRampRenderer.set_Symbol(ClassCount - j - 1, pSymbol as ISymbol); } pTLayer.ClearRenderers(); (pTinColorRampRenderer as ITinRenderer).Visible = true; pTLayer.InsertRenderer(pTinColorRampRenderer as ITinRenderer, 0);//插入一个渲染模型 pTocContral.SetBuddyControl(pMapContral); pTocContral.Refresh(); pMapContral.Refresh(); if (bar3.SelectedDockTab == 2) { IActiveView pActiveView = pSceneControl.Scene as IActiveView; pActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, pTLayer, null); } this.Close(); } } } } }
public static IElement CreateElement(IPageLayout ipageLayout_0) { int num; double num1; double num2; ITextSymbol symbol; esriTextHorizontalAlignment horizontalAlignment; esriTextVerticalAlignment verticalAlignment; IScaleText scaleTextClass; UID uIDClass; IMapFrame mapFrame; IEnvelope envelopeClass; IEnvelope envelope; ILegend legendClass2; IScaleBar hollowScaleBarClass; double num3; double num4; INorthArrow markerNorthArrowClass; IPoint position = ElementWizardHelp.GetPosition(ipageLayout_0, out num, out num1, out num2); IElement textElementClass = null; switch (ElementWizardHelp.m_ElementType) { case ElementType.ConstantText: { textElementClass = new TextElementClass(); (textElementClass as IElementProperties).Name = ElementWizardHelp.m_Text; (textElementClass as ITextElement).Text = ElementWizardHelp.m_Text; if (ElementWizardHelp.m_pStyle != null) { ElementWizardHelp.SetTextSymblAlign(ElementWizardHelp.m_pStyle as ITextSymbol, num); (textElementClass as ITextElement).Symbol = ElementWizardHelp.m_pStyle as ITextSymbol; } textElementClass.Geometry = position; if (!ElementWizardHelp.m_IsVerticalText) { (textElementClass as IElementProperties).Type = ""; symbol = (textElementClass as ITextElement).Symbol; if (symbol.Angle != 270) { return(textElementClass); } (symbol as ICharacterOrientation).CJKCharactersRotation = false; symbol.Angle = 0; horizontalAlignment = symbol.HorizontalAlignment; verticalAlignment = symbol.VerticalAlignment; if (horizontalAlignment == esriTextHorizontalAlignment.esriTHALeft) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHAFull) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHARight) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHACenter) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVACenter; } if (verticalAlignment == esriTextVerticalAlignment.esriTVATop) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHALeft; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABottom) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVACenter) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABaseline) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } (textElementClass as ITextElement).Symbol = symbol; return(textElementClass); } else { (textElementClass as IElementProperties).Type = "竖向"; symbol = (textElementClass as ITextElement).Symbol; (symbol as ICharacterOrientation).CJKCharactersRotation = true; symbol.Angle = 270; horizontalAlignment = symbol.HorizontalAlignment; verticalAlignment = symbol.VerticalAlignment; if (horizontalAlignment == esriTextHorizontalAlignment.esriTHALeft) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHAFull) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHARight) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHACenter) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVACenter; } if (verticalAlignment == esriTextVerticalAlignment.esriTVATop) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHALeft; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABottom) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVACenter) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABaseline) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } (textElementClass as ITextElement).Symbol = symbol; return(textElementClass); } } case ElementType.SingleText: { textElementClass = new TextElementClass(); (textElementClass as IElementProperties).Name = ElementWizardHelp.m_Text; (textElementClass as ITextElement).Text = string.Concat("=", ElementWizardHelp.m_Text); if (ElementWizardHelp.m_pStyle != null) { ElementWizardHelp.SetTextSymblAlign(ElementWizardHelp.m_pStyle as ITextSymbol, num); (textElementClass as ITextElement).Symbol = ElementWizardHelp.m_pStyle as ITextSymbol; } textElementClass.Geometry = position; if (!ElementWizardHelp.m_IsVerticalText) { (textElementClass as IElementProperties).Type = ""; symbol = (textElementClass as ITextElement).Symbol; if (symbol.Angle != 270) { return(textElementClass); } (symbol as ICharacterOrientation).CJKCharactersRotation = false; symbol.Angle = 0; horizontalAlignment = symbol.HorizontalAlignment; verticalAlignment = symbol.VerticalAlignment; if (horizontalAlignment == esriTextHorizontalAlignment.esriTHALeft) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHAFull) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHARight) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHACenter) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVACenter; } if (verticalAlignment == esriTextVerticalAlignment.esriTVATop) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHALeft; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABottom) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVACenter) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABaseline) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } (textElementClass as ITextElement).Symbol = symbol; return(textElementClass); } else { (textElementClass as IElementProperties).Type = "竖向"; symbol = (textElementClass as ITextElement).Symbol; (symbol as ICharacterOrientation).CJKCharactersRotation = true; symbol.Angle = 270; horizontalAlignment = symbol.HorizontalAlignment; verticalAlignment = symbol.VerticalAlignment; if (horizontalAlignment == esriTextHorizontalAlignment.esriTHALeft) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHAFull) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHARight) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHACenter) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVACenter; } if (verticalAlignment == esriTextVerticalAlignment.esriTVATop) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHALeft; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABottom) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVACenter) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABaseline) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } (textElementClass as ITextElement).Symbol = symbol; return(textElementClass); } } case ElementType.MultiText: { textElementClass = new TextElementClass(); (textElementClass as IElementProperties).Name = ElementWizardHelp.m_Text; (textElementClass as ITextElement).Text = string.Concat("M=", ElementWizardHelp.m_Text); if (ElementWizardHelp.m_pStyle != null) { ElementWizardHelp.SetTextSymblAlign(ElementWizardHelp.m_pStyle as ITextSymbol, num); (textElementClass as ITextElement).Symbol = ElementWizardHelp.m_pStyle as ITextSymbol; } textElementClass.Geometry = position; if (!ElementWizardHelp.m_IsVerticalText) { (textElementClass as IElementProperties).Type = ""; symbol = (textElementClass as ITextElement).Symbol; if (symbol.Angle != 270) { return(textElementClass); } (symbol as ICharacterOrientation).CJKCharactersRotation = false; symbol.Angle = 0; horizontalAlignment = symbol.HorizontalAlignment; verticalAlignment = symbol.VerticalAlignment; if (horizontalAlignment == esriTextHorizontalAlignment.esriTHALeft) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHAFull) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHARight) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHACenter) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVACenter; } if (verticalAlignment == esriTextVerticalAlignment.esriTVATop) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHALeft; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABottom) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVACenter) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABaseline) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } (textElementClass as ITextElement).Symbol = symbol; return(textElementClass); } else { (textElementClass as IElementProperties).Type = "竖向"; symbol = (textElementClass as ITextElement).Symbol; (symbol as ICharacterOrientation).CJKCharactersRotation = true; symbol.Angle = 270; horizontalAlignment = symbol.HorizontalAlignment; verticalAlignment = symbol.VerticalAlignment; if (horizontalAlignment == esriTextHorizontalAlignment.esriTHALeft) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHAFull) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHARight) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABottom; } else if (horizontalAlignment == esriTextHorizontalAlignment.esriTHACenter) { symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVACenter; } if (verticalAlignment == esriTextVerticalAlignment.esriTVATop) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHALeft; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABottom) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVACenter) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter; } else if (verticalAlignment == esriTextVerticalAlignment.esriTVABaseline) { symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHARight; } (textElementClass as ITextElement).Symbol = symbol; return(textElementClass); } } case ElementType.JoinTable: { textElementClass = (new JionTab()).CreateJionTab(ipageLayout_0 as IActiveView, position); return(textElementClass); } case ElementType.ScaleText: { if (ElementWizardHelp.m_pStyle == null) { scaleTextClass = new ScaleTextClass(); } else { scaleTextClass = ElementWizardHelp.m_pStyle as IScaleText; } uIDClass = new UIDClass() { Value = "esriCarto.ScaleText" }; mapFrame = (ipageLayout_0 as IGraphicsContainer).FindFrame((ipageLayout_0 as IActiveView).FocusMap) as IMapFrame; scaleTextClass.MapUnits = mapFrame.Map.DistanceUnits; scaleTextClass.PageUnits = ipageLayout_0.Page.Units; scaleTextClass.Style = esriScaleTextStyleEnum.esriScaleTextAbsolute; INumberFormat numberFormat = scaleTextClass.NumberFormat; if (numberFormat is INumericFormat) { (numberFormat as INumericFormat).RoundingOption = esriRoundingOptionEnum.esriRoundNumberOfDecimals; (numberFormat as INumericFormat).UseSeparator = false; (numberFormat as INumericFormat).RoundingValue = 0; scaleTextClass.NumberFormat = numberFormat; } textElementClass = mapFrame.CreateSurroundFrame(uIDClass, scaleTextClass) as IElement; envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + 4, position.Y + 8); envelope = new EnvelopeClass(); scaleTextClass.QueryBounds((ipageLayout_0 as IActiveView).ScreenDisplay, envelopeClass, envelope); envelopeClass.PutCoords(position.X, position.Y, position.X + envelope.Width, position.Y + envelope.Height); textElementClass.Geometry = envelopeClass; return(textElementClass); } case ElementType.CustomLegend: { CustomLegend customLegend = new CustomLegend() { LegendInfo = ElementWizardHelp.m_pLegendInfo }; customLegend.Init(ipageLayout_0 as IActiveView, position); textElementClass = customLegend; return(textElementClass); } case ElementType.Legend: { if (ElementWizardHelp.m_pStyle == null) { legendClass2 = new LegendClass_2(); } else { legendClass2 = ElementWizardHelp.m_pStyle as ILegend; } legendClass2.AutoAdd = true; legendClass2.AutoReorder = true; legendClass2.AutoVisibility = true; uIDClass = new UIDClass() { Value = "esriCarto.Legend" }; mapFrame = (ipageLayout_0 as IGraphicsContainer).FindFrame((ipageLayout_0 as IActiveView).FocusMap) as IMapFrame; textElementClass = mapFrame.CreateSurroundFrame(uIDClass, legendClass2) as IElement; envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + 4, position.Y + 8); envelope = new EnvelopeClass(); legendClass2.QueryBounds((ipageLayout_0 as IActiveView).ScreenDisplay, envelopeClass, envelope); envelopeClass.PutCoords(position.X, position.Y, position.X + envelope.Width, position.Y + envelope.Height); textElementClass.Geometry = envelopeClass; return(textElementClass); } case ElementType.Picture: { string lower = System.IO.Path.GetExtension(ElementWizardHelp.m_PictureFileName).ToLower(); textElementClass = null; string str = lower; if (string.IsNullOrEmpty(str)) { textElementClass = new PngPictureElementClass(); (textElementClass as IPictureElement).ImportPictureFromFile(ElementWizardHelp.m_PictureFileName); (textElementClass as IPictureElement).MaintainAspectRatio = true; num3 = 0; num4 = 0; (textElementClass as IPictureElement2).QueryIntrinsicSize(ref num3, ref num4); num3 = num3 * 0.0353; num4 = num4 * 0.0353; (textElementClass as IElementProperties2).AutoTransform = true; envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + num3, position.Y + num4); textElementClass.Geometry = envelopeClass; return(textElementClass); } else if (str == ".bmp") { textElementClass = new BmpPictureElementClass(); } else if (str == ".jpg") { textElementClass = new JpgPictureElementClass(); } else if (str == ".gif") { textElementClass = new GifPictureElementClass(); } else if (str == ".tif") { textElementClass = new TifPictureElementClass(); } else { if (str != ".emf") { textElementClass = new PngPictureElementClass(); (textElementClass as IPictureElement).ImportPictureFromFile(ElementWizardHelp.m_PictureFileName); (textElementClass as IPictureElement).MaintainAspectRatio = true; num3 = 0; num4 = 0; (textElementClass as IPictureElement2).QueryIntrinsicSize(ref num3, ref num4); num3 = num3 * 0.0353; num4 = num4 * 0.0353; (textElementClass as IElementProperties2).AutoTransform = true; envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + num3, position.Y + num4); textElementClass.Geometry = envelopeClass; return(textElementClass); } textElementClass = new EmfPictureElementClass(); } (textElementClass as IPictureElement).ImportPictureFromFile(ElementWizardHelp.m_PictureFileName); (textElementClass as IPictureElement).MaintainAspectRatio = true; num3 = 0; num4 = 0; (textElementClass as IPictureElement2).QueryIntrinsicSize(ref num3, ref num4); num3 = num3 * 0.0353; num4 = num4 * 0.0353; (textElementClass as IElementProperties2).AutoTransform = true; envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + num3, position.Y + num4); textElementClass.Geometry = envelopeClass; return(textElementClass); } case ElementType.OLE: { int screenDisplay = (ipageLayout_0 as IActiveView).ScreenDisplay.hWnd; Common.ExtendClass.IOleFrame oleFrame = new OleFrame(); if (!oleFrame.CreateOleClientItem((ipageLayout_0 as IActiveView).ScreenDisplay, screenDisplay)) { return(textElementClass); } textElementClass = oleFrame as IElement; envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + 4, position.Y + 8); envelope = new EnvelopeClass(); textElementClass.QueryBounds((ipageLayout_0 as IActiveView).ScreenDisplay, envelope); envelopeClass.PutCoords(position.X, position.Y, position.X + envelope.Width, position.Y + envelope.Height); textElementClass.Geometry = envelopeClass; return(textElementClass); } case ElementType.ScaleBar: { if (ElementWizardHelp.m_pStyle == null) { hollowScaleBarClass = new HollowScaleBarClass(); } else { hollowScaleBarClass = ElementWizardHelp.m_pStyle as IScaleBar; } uIDClass = new UIDClass() { Value = "esriCarto.ScaleBar" }; mapFrame = (ipageLayout_0 as IGraphicsContainer).FindFrame((ipageLayout_0 as IActiveView).FocusMap) as IMapFrame; hollowScaleBarClass.Units = mapFrame.Map.DistanceUnits; textElementClass = mapFrame.CreateSurroundFrame(uIDClass, hollowScaleBarClass) as IElement; envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + 4, position.Y + 8); envelope = new EnvelopeClass(); hollowScaleBarClass.QueryBounds((ipageLayout_0 as IActiveView).ScreenDisplay, envelopeClass, envelope); envelopeClass.PutCoords(position.X, position.Y, position.X + envelope.Width, position.Y + envelope.Height); textElementClass.Geometry = envelopeClass; return(textElementClass); } case ElementType.North: { if (ElementWizardHelp.m_pStyle == null) { markerNorthArrowClass = new MarkerNorthArrowClass(); } else { markerNorthArrowClass = ElementWizardHelp.m_pStyle as INorthArrow; } envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + 3, position.Y + 3); uIDClass = new UIDClass() { Value = "esriCarto.MarkerNorthArrow" }; mapFrame = (ipageLayout_0 as IGraphicsContainer).FindFrame((ipageLayout_0 as IActiveView).FocusMap) as IMapFrame; textElementClass = mapFrame.CreateSurroundFrame(uIDClass, markerNorthArrowClass) as IElement; envelope = new EnvelopeClass(); markerNorthArrowClass.QueryBounds((ipageLayout_0 as IActiveView).ScreenDisplay, envelopeClass, envelope); envelopeClass.PutCoords(position.X, position.Y, position.X + envelope.Width, position.Y + envelope.Height); textElementClass.Geometry = envelopeClass; return(textElementClass); } case ElementType.GraphicElement: { return(textElementClass); } case ElementType.DataGraphicElement: { envelopeClass = new EnvelopeClass(); envelopeClass.PutCoords(position.X, position.Y, position.X + 8, position.Y + 8); textElementClass = new DataGraphicsElement() { Geometry = envelopeClass }; return(textElementClass); } default: { return(textElementClass); } } }