繁体   English   中英

Scrollview项目控件网格

[英]Scrollview for Itemscontrol grid

我有一个自定义控件,基本上是一个项控件。 这是一个3x3按钮的网格,我希望每个页面具有3x3按钮的滚动视图具有不同的页面。

以下是一些图片来说明我的意思:

http://i59.tinypic.com/2reiez6.png

http://i59.tinypic.com/69kwhl.png

http://i61.tinypic.com/1z4cr6d.png

我将如何创建这样的东西? 我的控件的完整代码可以在这里找到: 访问ItemsControl项目并逐个制作动画。

提前致谢!

您可以在Grid中添加ScrollViewer,并将3x3 Grid放置在水平放置的StackPanel中。

<Grid >
        <ScrollViewer VerticalScrollBarVisibility="Hidden" HorizontalScrollBarVisibility="Visible" ScrollChanged="ScrollViewer_ScrollChanged">
            <StackPanel Orientation="Horizontal" Name="stack">
                  ...
            </StackPanel>
        </ScrollViewer>
    </Grid>

然后使用ScrollViewer_ScrollChanged更改滚动偏移量

private void ScrollViewer_ScrollChanged(object sender, ScrollChangedEventArgs e)
    {
        int direction = e.HorizontalChange > 0 ? 1 : -1;
        (sender as ScrollViewer).ScrollToHorizontalOffset(stack.ActualWidth * direction / [number of grids]);

    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM