wpf – как я могу проверить полосы прокрутки в средстве просмотра прокрутки?

StackOverflow https://stackoverflow.com/questions/1443583

  •  22-07-2019
  •  | 
  •  

Вопрос

Может кто-нибудь сказать мне, как проверить полосы прокрутки средства просмотра прокрутки в WPF?

Спасибо,

Энди

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300">
    <StackPanel>
        <ScrollViewer Name="myScrollViewer" Width="280" Height="200" MouseMove="ScrollViewer_MouseMove" >


        </ScrollViewer>

        <TextBox Name="myTextBox"></TextBox>
    </StackPanel>
</Window>

Код позади...

using System.Windows.Input;

namespace WpfApplication1
{
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1
    {
        public Window1()
        {
            InitializeComponent();
        }

        private void ScrollViewer_MouseMove(object sender, MouseEventArgs e)
        {
            myTextBox.Text = e.GetPosition(myScrollViewer).X + "," + e.GetPosition(myScrollViewer).Y;
        }

    }
}
Это было полезно?

Решение

С VisualTreeHelper.HitTest, MouseEventArgs относится к средству просмотра прокрутки, поэтому первым параметром является ваш ScrollViewer.Затем используйте PointHitTestПараметр с координатой MouseEventArgs.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top