我有一个录制文件,其大小可以通过 WPF 滚动条滚动(滚动条的最大值和最小值以毫秒为单位)。
我使用了一个计时器控件,它将继续查询重新编码文件的大小。每秒钟记录文件的大小都会增加。它最多可以持续 12 小时,或者用户可以在两者之间停止它。
我的要求是:
- 当我们开始录制时,滚动条的缩略图大小应该是完整视口(可滚动区域)的长度。
- 随着记录的进展,拇指大小应该减小。
默认滚动条为您提供了此功能,不是吗?请务必在 ScrollBar 上设置 ViewportSize 属性。
您需要的 ScrollBar 属性是
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApplication1"
Title="MainWindow" Height="99" Width="418">
<Grid Margin="0,0,2,0">
<Slider Minimum="0" Maximum="1000" Name="slider1" Margin="61,27,0,0" Height="27" VerticalAlignment="Top" HorizontalAlignment="Left" Width="338" />
<TextBlock Text="{Binding Value, ElementName=slider1}" Margin="10,32,0,0" Height="16" VerticalAlignment="Top" HorizontalAlignment="Left" Width="46"/>
<ScrollBar Orientation="Horizontal" Minimum="0" Maximum="{Binding Value, ElementName=slider1}" Margin="10,10,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="388" Height="1" SmallChange="1" LargeChange="10" ViewportSize="10"/>
</Grid>
</Window>