Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight ScrollViewer没有';当元素有余量时不工作_Silverlight_Xaml_Silverlight 5.0_Scrollviewer_Uielement - Fatal编程技术网

Silverlight ScrollViewer没有';当元素有余量时不工作

Silverlight ScrollViewer没有';当元素有余量时不工作,silverlight,xaml,silverlight-5.0,scrollviewer,uielement,Silverlight,Xaml,Silverlight 5.0,Scrollviewer,Uielement,我的问题是,ScrollViewer仅当鼠标光标悬停在其中一个文本块或任何其他UIElement上时才会滚动。当光标位于页边空白处(图像中为红色)时,将忽略滚动 在这里,您可以看到Silverlight 5中创建的示例: 我尝试使用Grid而不是StackPanel,但没有成功。将边距更改为填充似乎效果更好,但我的控件上还有其他元素具有边距,如果可能,我希望使用边距。 我尝试在这里和谷歌搜索,但似乎没有人有同样的问题。 为什么这样不行 下面是演示该行为的示例代码: <UserContro

我的问题是,
ScrollViewer
仅当鼠标光标悬停在其中一个文本块或任何其他
UIElement
上时才会滚动。当光标位于页边空白处(图像中为红色)时,将忽略滚动

在这里,您可以看到Silverlight 5中创建的示例:

我尝试使用
Grid
而不是
StackPanel
,但没有成功。将边距更改为填充似乎效果更好,但我的控件上还有其他元素具有边距,如果可能,我希望使用边距。
我尝试在这里和谷歌搜索,但似乎没有人有同样的问题。

为什么这样不行

下面是演示该行为的示例代码:

<UserControl x:Class="cwtest.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">
<UserControl.Resources>
    <Style TargetType="TextBlock">
        <Setter Property="Margin" Value="30"></Setter>
    </Style>
</UserControl.Resources>
<Grid x:Name="LayoutRoot" Background="White">
    <ScrollViewer Height="300" Width="500">
        <StackPanel>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
            <TextBlock Text="Text Text Text Text Text Text Text Text Text Text Text Text Text Text "></TextBlock>
        </StackPanel>
    </ScrollViewer>
</Grid>
</UserControl>

它只需要一些东西使它的命中测试可见,这很容易添加
Background=“Transparent”
之类的内容

<ScrollViewer Height="300" Width="500" Background="Transparent">

如果你想的话,也可以加上背景色或其他颜色。我知道你看起来很迟钝,但这就是你所需要的

希望这有帮助