codeplex的WPF sound visualizer控件中需要滚动条

codeplex的WPF sound visualizer控件中需要滚动条,wpf,Wpf,我正在codeplex()使用WPF声音可视化器控件。 每当加载音频文件时,音频都会加载到固定长度的波形时间轴控件中。因此,当加载任意长度的音频时,它会根据波形时间轴控制宽度进行调整。我无法向波形时间线控件添加滚动条,以便根据音频的长度,波形时间线控件的宽度放大 我在解决方案中引用了dll,并将以下内容包含在我的xaml文件中 xmlns:svl="clr-namespace:WPFSoundVisualizationLib;assembly=WPFSoundVisualizationLib"

我正在codeplex()使用WPF声音可视化器控件。 每当加载音频文件时,音频都会加载到固定长度的波形时间轴控件中。因此,当加载任意长度的音频时,它会根据波形时间轴控制宽度进行调整。我无法向波形时间线控件添加滚动条,以便根据音频的长度,波形时间线控件的宽度放大

我在解决方案中引用了dll,并将以下内容包含在我的xaml文件中

xmlns:svl="clr-namespace:WPFSoundVisualizationLib;assembly=WPFSoundVisualizationLib" 
我在xaml中添加了波形时间轴控件

<svl:WaveformTimeline x:Name="waveformTimeline"/>

我使用了两个控件来解决放大/缩小问题。控件是ScrollViewer和Slider

首先,我将WaveformTimeline控件嵌入到ScrollViewer控件中,如下所示

<ScrollViewer  x:Name="waveScroll"  HorizontalScrollBarVisibility="Visible" Grid.ColumnSpan="4" Margin="0,99,10,-95">
     <svl:WaveformTimeline x:Name="waveformTimeline"
         Margin="5" Width="8000"
         BorderThickness="1" Grid.ColumnSpan="4" >
         <svl:WaveformTimeline.LayoutTransform>
              <ScaleTransform ScaleX="{Binding ElementName=xscroll, Path=Value}" />
         </svl:WaveformTimeline.LayoutTransform>
     </svl:WaveformTimeline>
</ScrollViewer>

我在WaveformTimeline控件中添加了滑块控件并将该控件绑定到这里

<Slider Name="xscroll" Width="100" VerticalAlignment="Center" Minimum=".5" 
Maximum="2.0" Ticks=".5,.6,.7,.8,.9,1,1.1,1.2,1.3,1.4,1.5,1.6,1.75" 
IsSnapToTickEnabled="True" Value="1" SmallChange=".25" LargeChange=".25" 
Margin="84,201,248,-122" />

移动滑块时,它会根据移动方向放大/缩小

<Slider Name="xscroll" Width="100" VerticalAlignment="Center" Minimum=".5" 
Maximum="2.0" Ticks=".5,.6,.7,.8,.9,1,1.1,1.2,1.3,1.4,1.5,1.6,1.75" 
IsSnapToTickEnabled="True" Value="1" SmallChange=".25" LargeChange=".25" 
Margin="84,201,248,-122" />