Моя задача такова, когда пользователь прокрутит скролл до конца текста выполняется нужный мне код. Но сколько не искал, не смог найти способа проверки положения скролла.
Как это можно реализовать?
Вот такой есть вариант получить информацию о положении скролла и его параметрах (дальше думаю сами разберетесь).Главное разобраться со структурой SCROLLINFO. Для этого прилагаю ссылки
описание MSDN структуры SCROLLINFO
GetScrollInfo MSDN
То же на русском
[DllImport("user32.dll")]
private static extern bool GetScrollInfo(IntPtr hWnd, int nBar, ref SCROLLINFO ScrollInfo);
[StructLayout(LayoutKind.Sequential)]
public struct SCROLLINFO
{
public int cbSize;
public int fMask;
public int nMin;
public int nMax;
public int nPage;
public int nPos;
public int nTrackPos;
}
public enum ScrollBarType : uint
{
SbHorz = 0,
SbVert = 1,
SbCtl = 2,
SbBoth = 3
}
private const int SB_VERT = 0x1;
private const int SB_HORZ = 0x0;
private const int SIF_PAGE = 0x2;
private const int SIF_POS = 0x4;
private const int SIF_RANGE = 0x1;
private const int SIF_TRACKPOS = 0x10;
private const int SIF_ALL = (SIF_RANGE | SIF_PAGE | SIF_POS | SIF_TRACKPOS);
private void richTextBox1_VScroll(object sender, EventArgs e)
{
SCROLLINFO si = new SCROLLINFO();
si.cbSize = System.Runtime.InteropServices.Marshal.SizeOf(si);
si.fMask = SIF_ALL;
GetScrollInfo(richTextBox1.Handle, (int)ScrollBarType.SbVert, ref si);
textBox1.Text = si.nPos.ToString();
textBox2.Text = si.nMax.ToString();
textBox3.Text = si.nPage.ToString();
}
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники