I need to create multiple containers which can be freely moved and resized by the user (within the main surface of the app). Basically I need multiframe GUI.
I didn’t find the existing control in the toolbox. So the question is: do I have to create my own control for this purpose (with monitoring and processing OnClick, OnMove and other events) or there are some other solutions?
What you’re asking for is something like the scatterview available for Microsoft PixelSense on Samsung SUR40. Currently there is no predefined control for that. You can implement your own drag and drop, and in a very basic fashion this isn’t hard. Look at the Reactive Extensions ( they do support Metro Style apps in the latest release: http://channel9.msdn.com/Shows/Going+Deep/Bart-De-Smet-Rx-Updat-NET-45-Async-WinRT ). They have a sample how to do it very simple and basic.
I do want to advise you to rethink your application concept. For being a great Windows 8 style UI app, you should avoid introducing ui concepts that differ too much from what other apps are using (or what Microsoft is asking you to follow in terms of guidelines). Depending on what you want to drag, it might be useful to work with filters and a listview to present the content along with that drill-down like navigation concept (hub-section-detail).
One side note: to avoid later confusion: you’re not going to use WPF but XAML. There are differences in features how it’s implemented.