简体   繁体   中英

How to get scroll position for RichTextBox?

I'm working in C#, Windows Forms application, and have a problem getting scroll position for RichTextBox with large amount of text.

I'm using this code:

  public class POINT
    {
        public  int x;
        public int y;

        public POINT()
        {
        }

        public POINT(int x, int y)
        {
            this.x = x;
            this.y = y;
        }
    }

SendMessage(this.Handle, EM_GETSCROLLPOS, 0, res)

But, when control contains large amount of text, resulting y offset is incorect because upper 16 bits of Y are always 0.

Is there any way to get scroll position larger than 16 bits?

I thought it was about time to case this into an answer

GetPositionFromCharIndex(0)

Retrieves the location within the control at the specified character index

This will get the offset, of the character relative the the control

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM