[英]Scrollview for Itemscontrol grid
我有一個自定義控件,基本上是一個項控件。 這是一個3x3按鈕的網格,我希望每個頁面具有3x3按鈕的滾動視圖具有不同的頁面。
以下是一些圖片來說明我的意思:
我將如何創建這樣的東西? 我的控件的完整代碼可以在這里找到: 訪問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.