可调整大小的内窗

时间:2012-08-08 08:10:11

标签: c# .net windows-8 microsoft-metro

我需要创建多个容器,这些容器可以由用户自由移动和调整大小(在应用程序的主表面内)。基本上我需要多帧GUI。

我没有找到工具箱中的现有控件。所以问题是:我是否必须为此目的创建自己的控件(通过监视和处理OnClick,OnMove和其他事件)或者还有其他一些解决方案?

1 个答案:

答案 0 :(得分:1)

您所要求的是类似于三星SUR40上的Microsoft PixelSense可用的分散视图。目前没有预定义的控制权。您可以实现自己的拖放操作,并且以非常基本的方式实现这一点并不难。查看Reactive Extensions(它们确实支持最新版本中的Metro Style应用程序:http://channel9.msdn.com/Shows/Going+Deep/Bart-De-Smet-Rx-Updat-NET-45-Async-WinRT)。他们有一个样本如何做到非常简单和基本。

我确实建议您重新考虑您的应用程序概念。要成为一款出色的Windows 8风格的UI应用程序,您应该避免引入与其他应用程序使用的内容差异太大的ui概念(或者Microsoft要求您遵循指南的内容)。根据您要拖动的内容,使用过滤器和列表视图来显示内容以及向下钻取的导航概念(hub-section-detail)可能会很有用。

一方面注意:为了避免以后出现混淆:你不会使用WPF而是使用XAML。它的实现方式有所不同。