Я нашел этот учебник по аналоговым часам здесь:
http://www.codeproject.com/KB/selection/AnalogClockControl.aspx
Теперь можно перетаскивать стрелку часов (как определить мышь на часах руки?)и показать, что этот стрелочный час движется при его перетаскивании?
Я имею в виду, что в .NET нет ничего, что позволило бы обнаружить, что мышь находится в форме, подобной IPHONE SDK?
Я бы предложил вам использовать то, что называется "Rx": реактивные расширения, все, что вы хотите, вы можете делать без него, но Rx делает вашу жизнь лучше и проще:)
Существует Rx для .NET и Rx для Javascript, то же самое, и вы можете использовать аналогичные приемы где угодно.
Вот хорошее видео о том, как сделать перетаскивание с использованием Rx в .NET (в этом примере WPF) и даже если вы делаете что-то еще (winforms, silverlight, javascript) - посмотрите это видео в любом случае, оно дает идея и реализация абсолютно одинаковы для всего остального: http://channel9.msdn.com/blogs/j.van.gogh/writing-your-first-rx-application
А вот специфический для javascript drag-n-drop с использованием Rx: http://weblogs.asp.net/podwysocki/archive/2010/03/19/introduction-to-the-reactive-extensions-for-javascript-drag-and-drop.aspx
Вы можете сделать это, если будете рисовать руки с помощью класса GraphicsPath. Его метод IsVisible () позволяет вам выполнять тестирование попаданий в событии MouseDown и обнаруживать, что мышь находится над рукой.
Вам нужно будет обработать события MouseDown, MouseMove и MouseUp.
Также вы можете отключить функции time-to-xy от часов и написать обратную версию xy-to-time.