основной вопрос слайдера WPF - PullRequest
0 голосов
/ 04 июня 2010

Я использую ползунковый элемент управления в WPF, чтобы показать, сколько файлов было прочитано, и для контроля, откуда читать файл.

Ползунок связывает свое значение с int ProgressValue. Я использую таймер, чтобы посмотреть текущий процент чтения и установить ProgressValue соответственно. Ползунок перемещается в нужное положение. Когда читается больше файла, ползунок перемещается вправо.

Но как мне определить, что пользователь нажал на ползунок и перемещает его, чтобы я мог найти свой файл с требуемым смещением? Я пытался добавить обработчики в MouseLeftButtonDown, DragEnter, DragLeave и DragOver, но они не вызывались, когда я щелкаю и перетаскиваю ползунок. Это XAML текущего слайдера:

<Slider x:Name="sliderProgress" TickPlacement="BottomRight" TickFrequency="1000" Minimum="0" Maximum="1000" Value="{Binding ProgressValue1000}" Style="{DynamicResource SliderStyle1}" HorizontalAlignment="Left" Width="478" MouseLeftButtonDown="onSliderLeftButtonDown" />

Ответы [ 2 ]

1 голос
/ 04 июня 2010

Необходимо добавить обработчик для события ValueChanged, чтобы получить текущее значение ползунка, когда пользователь перемещает его. затем вы можете найти новое значение ползунка, используя параметр события e.NewValue.

0 голосов
/ 04 июня 2010

Почему вы не можете использовать связанное свойство 'ProgressValue'? Внесенное пользователем изменение готово для вас в этом свойстве, поскольку любой элемент управления UserEditable по умолчанию связывает TwoWay и обновляет источник при изменении его свойства.

Как только пользователь изменяет значение ползунка, изменение распространяется на связанное свойство 'ProgressValue'. Теперь вы можете использовать это свойство для поиска вашего файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...