制作自定义(/模板化)ScrollViewer或ListBox,了解要查看的项目

时间:2012-10-03 19:12:45

标签: wpf mvvm listbox scrollviewer listboxitems

我正在尝试在WPF c#中创建一个类似全景的控件,它从一组水平网格滚动到/只能看到一个网格。我需要公开一个命令,它允许我在ScrollViewer或ListBox中的任何网格上从各种控件(使用InteractionTrigger就足够了)向前/向后滚动。

我希望每个内部网格的大小与他们所居住的用户控件的实际高度/宽度(如平铺页面)一样,不需要任何滚动条,最终会将缓动效果/状态应用于每个滚动位置。

如果这太模糊/错综复杂,请告诉我。

提前致谢! :)

1 个答案:

答案 0 :(得分:0)

简易解决方案:

PathListBox控件。下载PathListBox工具包(对于PathListBoxScrollBehavior),将容量设置为1,并使用模板化的InteractionTriggers将我的网格上的各种源对象绑定到InvokeCommandAction递增/递减命令。然后我添加了缓动效果/ GoToStateActions。

我意识到这是一种欺骗,但我仍然会使用从ListBox和/或ScrollViewer派生的自定义控件模板来搜索“真正”的方法。

相关问题