During these days a Surface Studio has fallen into my hands (Wow!). The truth is that after trying it in Microsoft offices, now that I’m really giving it work, it’s an awesome device. One of the things I wanted to try was the Surface Dial, not just to use it in Design or Drawing Apps, but to see what we could do from the point of view of a Developer.
Well, like most new Windows 10 Devices, the same is connected by BlueTooth, so you do not need a Surface Studio, you can use the Surface Dial from a Surface Pro, or as I explain now, using a standard Windows 10 computer. Once the device is paired, we will see a new section in Settings called [Wheel]
For this example I will create a very simple App based on the Dev Center samples. I will use one of the Windows Template Studio templates for an App with CodeBehind and with the basic navigation template.
I will also add a couple of pages to test the Surface Dial on maps, video viewers and something with the camera (I need to think about this one…)
The final App is something like this image
The next thing is to add some code in our App. In the Main View I will add a Slide control and a Switch control. However is in the CodeBehind where magic begins. The first thing is to define a RadialController that is the one that will allow us to interact with the Surface Dial.
Then we register our App to be used on the Surface Dial start. In this case and with the values that we can see above, we will see that, at the moment of pressing the Dial, we have the default apps with which the Dial interacts and also the new option [El Bruno Sample App]
If we select this option, we can start to use some of the events triggered by the Surface Dial like ControllerButtonClicked() or ControllerRotationChanged(). As it is obvious for this example, what we will do is to change the values of the Slider when the Dial is turned and to change the state of the Switch when the Dial is pressed.
The truth is that it is quite simple and in a few minutes we can integrate these 2 basic features in a Windows Store App. As I said in future posts I will complete the example with modifications on a Media Player and on a map.
Source Code at GitHub
Greetings @ Burlington