Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ScrollViewer и его ScrollBars, опять грабли =) 
V
    Опции темы
Partizan
Дата 9.7.2008, 17:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 67



В общем есть мой наследник от ScrollViewer-а, в котором мне необходимо реализовать кастомный скроллинг области даже если контент не выходит за пределы скроллвьюера....

я нормально могу получить ScrollBar-ы через ScrollViewer.Template, могу сделать их видимыми, но ни на какие действия пользователя они в этом случае почему-то не откликаются...
я конечно могу подписаться на ScrollBar.Track.IncreaseButton.Click,ScrollBar.Track.DecreaseButton.Click, ScrollBar.Track.Thum.Drag и т.д.,
но мне тогда не хватает событий от кнопок по краям скроллбара...как оказалось IncreaseButton и DecreaseButton - это то, что находится между этими кнопкам по краям и непосредственно полосой прокрутки:

<------ooooo------->

< > - кнопки
ooooo - полоса прокрутки
------  - это соответственно Increase- и DecreaseButton

так вот вопрос в том: как мне подписаться на нажатия этих кнопок по краям?
либо как вообще можно кастомизировать поведение скроллбара?




--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
HalkaR
Дата 9.7.2008, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пуфыстый назгул
****


Профиль
Группа: Экс. модератор
Сообщений: 2132
Регистрация: 8.12.2002
Где: В Москве

Репутация: 5
Всего: 42



А не попробовать ли действовать через сам ScrollViewer - ScrollToVerticalOffset?
PM MAIL   Вверх
Partizan
Дата 9.7.2008, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 67



HalkaR, я не совсем понял идеи. Можно чуть подробнее?


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
HalkaR
Дата 10.7.2008, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пуфыстый назгул
****


Профиль
Группа: Экс. модератор
Сообщений: 2132
Регистрация: 8.12.2002
Где: В Москве

Репутация: 5
Всего: 42



У ScroolViewer'a есть методы для скроллинга, ScrollToVerticalOffset и ScrollToHorizontalOffset
PM MAIL   Вверх
Partizan
Дата 10.7.2008, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 67



HalkaR, я знаю что они есть) но это мне не подходит)

мне нужно как нибудь добраться до тех RepeatButton ов ScrollBar-а, которые расположены по его краям...


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Partizan
Дата 10.7.2008, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 67



Всё...проблему решил =) 
Слава дебаггеру ) получилось как говорится "a little hackery" =)

 
Код

SCROLL_BAR_OBJECT.Template.FindName("0_T", SCROLL_BAR_OBJECT);


этот код вернёт грид, у которого три дочерних элемента: пара этих RepeatButtons по краям + ScrollBar.Track =)

Вот так) всем спасибо)


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.1059 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.