Получение событий при освобождении объекта Button

#c# #silverlight #windows-phone-7

#c# #silverlight #windows-phone-7

Вопрос:

На Windows 7 Phone, используя Silverlight framework, я бы хотел обрабатывать, когда кнопка отпущена.

Легко определить, когда нажата кнопка (событие щелчка, которое запускается либо при нажатии, либо при отпускании в соответствии со свойством ClickMode)

Я играл со всеми другими событиями, предоставляемыми редактором событий (KeyUp, LostFocus, MouseLeave и т. Д.)

Но мне еще предстоит найти что-то, что является окончательным в отношении получения события при отпускании кнопки.

В конечном счете, я пытаюсь справиться с выполнением щелчка по сравнению с длинным щелчком при нажатии на кнопку

Спасибо

Комментарии:

1. Настройка не ClickMode="Release" работает? Это должно срабатывать при отпускании кнопки.

2. Это было бы… Но чтобы справиться с моим случаем, мне нужно знать, когда нажата кнопка и когда отпущена кнопка..

Ответ №1:

В вашей ситуации ввод ключа — это только половина истории. Вам также необходимо обработать нажатие клавиши, где вы сохраните текущее время, которое затем сравните с текущим значением времени после нажатия клавиши, чтобы определить, было ли нажатие коротким или длинным. Вам также необходимо убедиться, что вы отслеживаете одну конкретную клавишу на случай, если ваши обработчики перехватывают / перехватывают все нажатия клавиш.

Если по какой-то причине нажатие кнопки / Вверх не работает, вы можете попробовать обработать событие Click, но начать с режима нажатия кнопки press, а затем изменить режим ClickMode на release в обработчике нажатия. Этот процесс, хотя и не простой, даст вам возможность реализовать последовательность удержания и выключения таймера, которую вы ищете.

Комментарии:

1. К сожалению, ни KeyUp, ни KeyDown на самом деле не работают. Ни одно из этих событий, похоже, не возникает при нажатии на кнопку в Windows Phone 7. Можете ли вы изменить режим нажатия на полпути во время нажатия? Я думаю, это подойдет

2. Изменение режима нажатия при нажатии кнопки позволяет мне получать четные значения как для нажатия, так и для отпускания.. Спасибо за предложение…