//http://msdn.microsoft.com/en-us/library/bb787942(VS.85).aspx
        /// <summary>
        /// just testing, this is quite complicated
        /// http://msdn2.microsoft.com/en-us/library/aa140277(office.10).aspx
        /// </summary>
        public void LineSpace(LineSpaceTypes types, bool bSelectAll)
        {
            PARAFORMAT2 paraformat1 = new PARAFORMAT2();

            paraformat1.dwMask           = (int)PFM_LINESPACING;
            paraformat1.cbSize           = (int)Marshal.SizeOf(paraformat1);  //(UInt32)Marshal.SizeOf(paraformat1);
            paraformat1.bLineSpacingRule = (byte)(((int)types));
            //paraformat1.wReserved = 0;

            switch (types)
            {
            case LineSpaceTypes.Single: paraformat1.dyLineSpacing = 20; break;

            case LineSpaceTypes.OneAndHalf: paraformat1.dyLineSpacing = 30; break;

            case LineSpaceTypes.Double: paraformat1.dyLineSpacing = 40; break;
            }


            //  paraformat1.dyLineSpacing = ((int)types)40; // the above commented lie. This does need to be set
            if (bSelectAll == true)
            {
                this.SelectAll();
            }

            SendMessage(new System.Runtime.InteropServices.HandleRef(this, this.Handle), 0x447, 0, paraformat1);
            this.SelectionLength = 0;
        }
        //http://msdn.microsoft.com/en-us/library/bb787942(VS.85).aspx
        /// <summary>
        /// just testing, this is quite complicated
        /// http://msdn2.microsoft.com/en-us/library/aa140277(office.10).aspx
        /// </summary>
        public void LineSpace(LineSpaceTypes types, bool bSelectAll)
        {
            PARAFORMAT2 paraformat1 = new PARAFORMAT2();
            paraformat1.dwMask = (int)PFM_LINESPACING;
            paraformat1.cbSize = (int)Marshal.SizeOf(paraformat1);//(UInt32)Marshal.SizeOf(paraformat1);
            paraformat1.bLineSpacingRule = (byte)(((int)types));
            //paraformat1.wReserved = 0;

            switch (types)
            {
            case LineSpaceTypes.Single: paraformat1.dyLineSpacing = 20; break;
            case LineSpaceTypes.OneAndHalf: paraformat1.dyLineSpacing = 30; break;
            case LineSpaceTypes.Double: paraformat1.dyLineSpacing = 40; break;
            }

            //  paraformat1.dyLineSpacing = ((int)types)40; // the above commented lie. This does need to be set
            if (bSelectAll == true) this.SelectAll();

            SendMessage(new System.Runtime.InteropServices.HandleRef(this, this.Handle), 0x447, 0, paraformat1);
            this.SelectionLength = 0;
        }
 /// <summary>
 /// default linespace is to select all
 /// </summary>
 /// <param name="types"></param>
 public void LineSpace(LineSpaceTypes types)
 {
     LineSpace(types, true);
 }
 /// <summary>
 /// default linespace is to select all
 /// </summary>
 /// <param name="types"></param>
 public void LineSpace(LineSpaceTypes types)
 {
     LineSpace(types, true);
 }