Inheritance: RenderElement
 public TextEditRenderBox(RootGraphic rootgfx,
     int width, int height,
     bool isMultiLine)
     : base(rootgfx, width, height)
 {
     GlobalCaretController.RegisterCaretBlink(rootgfx);            
     myCaret = new CaretRenderElement(rootgfx, 2, 17);
     myCaret.TransparentForAllEvents = true;
     this.MayHasViewport = true;
     this.BackgroundColor = Color.White;// Color.Transparent;
     this.currentSpanStyle = new TextSpanStyle();
     this.currentSpanStyle.FontInfo = rootgfx.DefaultTextEditFontInfo;
     textLayer = new EditableTextFlowLayer(this);
     internalTextLayerController = new InternalTextLayerController(this, textLayer);
     this.isMultiLine = isMultiLine;
     if (isMultiLine)
     {
         textLayer.SetUseDoubleCanvas(false, true);
     }
     else
     {
         textLayer.SetUseDoubleCanvas(true, false);
     }
     this.IsBlockElement = false;
 }
        public TextEditRenderBox(RootGraphic rootgfx,
                                 int width, int height,
                                 bool isMultiLine)
            : base(rootgfx, width, height)
        {
            GlobalCaretController.RegisterCaretBlink(rootgfx);
            myCaret = new CaretRenderElement(rootgfx, 2, 17);
            myCaret.TransparentForAllEvents = true;

            this.MayHasViewport  = true;
            this.BackgroundColor = Color.White;// Color.Transparent;

            this.currentSpanStyle          = new TextSpanStyle();
            this.currentSpanStyle.FontInfo = rootgfx.DefaultTextEditFontInfo;

            textLayer = new EditableTextFlowLayer(this);

            internalTextLayerController = new InternalTextLayerController(this, textLayer);

            this.isMultiLine = isMultiLine;
            if (isMultiLine)
            {
                textLayer.SetUseDoubleCanvas(false, true);
            }
            else
            {
                textLayer.SetUseDoubleCanvas(true, false);
            }
            this.IsBlockElement = false;
        }