代码之家  ›  专栏  ›  技术社区  ›  Jack Ukleja

为什么我的一个ScrollViewer命令在ListBox模板中不起作用?

  •  0
  • Jack Ukleja  · 技术社区  · 14 年前

    问题是它只识别ScrollBar.PageLeftCommand命令或者ScrollBar.PageRightCommand命令... 我不能让它对这两个都做出反应。

    <ControlTemplate TargetType="{x:Type s:SurfaceListBox}">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="0.137*"/>
                <ColumnDefinition Width="0.726*"/>
                <ColumnDefinition Width="0.137*"/>
            </Grid.ColumnDefinitions>
            <Border x:Name="Border"  Grid.ColumnSpan="1" Grid.Column="1">
                <s:SurfaceScrollViewer x:Name="scrollViewer" >
                    <ItemsPresenter />
                </s:SurfaceScrollViewer>
            </Border>
            <s:SurfaceButton x:Name="rightScroll" Content="&gt;" Command="ScrollBar.PageRightCommand" CommandTarget="{Binding ElementName=scrollViewer}" Grid.Column="2" />
            <s:SurfaceButton x:Name="leftScroll" Content="&lt;" Command="ScrollBar.PageLeftCommand" CommandTarget="{Binding ElementName=scrollViewer}"/>
        </Grid>
    </ControlTemplate>
    

    我已经看过它与Snoop运行,但它告诉我没有任何有用的命令-根据Snoop两个命令都处理成功!

    2 回复  |  直到 14 年前
        1
  •  2
  •   TylerM    14 年前

    标准WPF控件不支持SurfaceScrollViewer的所有事件,但是,SurfaceScrollViewer打包的其他控件支持某些事件,如Click。

        2
  •  0
  •   Jack Ukleja    14 年前

    好吧,我撒谎了。我没有试着替换 SurfaceScrollViewer ScrollViewer .

    表面滚动查看器 至少有两个bug(我发现的第二个bug是 ScrollBar 与常规命令不同,命令隐藏时不响应命令 ).

    又被挫败了。