Scrollviewer блокирует события - PullRequest
3 голосов
/ 13 марта 2012

Сегодня я сражаюсь за просмотрщик прокрутки и за то, что он блокирует мои события.

    <ScrollViewer x:Name="scrollv" Panel.ZIndex="15" Margin="8,65.5,0,22" VerticalScrollBarVisibility="Visible" Height="392.5" Background="White" IsHitTestVisible="False">
        <Grid x:Name="listaintrebari" Height="Auto" Width="301.5" HorizontalAlignment="Left" VerticalAlignment="Top" Background="White" >

        </Grid>

    </ScrollViewer>

Итак, дело в том, что в сетке, которая находится внутри средства просмотра прокрутки, я программно добавляю вопросы UserControl ... у которых, кстати, есть кнопка с событием щелчка. Моя проблема в том, что мне не удается нажать на кнопку ... прокрутка действует как невидимый щит, чтобы защитить пользовательский контроль и кнопку от злой мыши!

Любая помощь приветствуется!

РЕДАКТИРОВАТЬ: (это мои вопросы Usercontrol)

   <UserControl
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"
xmlns:local="clr-namespace:eHelper_v3"
mc:Ignorable="d"
x:Class="eHelper_v3.questions"
x:Name="IntrebareControl" Width="330.641" Margin="0" MouseLeftButtonDown="IntrebareControl_MouseLeftButtonDown"

>

<Grid x:Name="LayoutRoot" ScrollViewer.VerticalScrollBarVisibility="Disabled" Margin="0,0,13,0" Height="90" >
    <Rectangle x:Name="rect" Panel.ZIndex="20" Height="90" Stroke="#FF0975A3"  >
        <Rectangle.Fill>
            <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                <GradientStop Color="#1404BFD8" Offset="0.004"/>
                <GradientStop Color="#1300A7FF" Offset="0.996"/>
                <GradientStop Color="#2B0F82CC" Offset="0.459"/>
            </LinearGradientBrush>
        </Rectangle.Fill>
    </Rectangle>
    <Image x:Name="imagine" HorizontalAlignment="Left" Margin="8,8,0,8" Width="126.667" Stretch="Fill" MouseLeftButtonDown="imagine_MouseLeftButtonDown" />
    <TextBlock x:Name="textul" Margin="138.667,8,8,22.5" TextWrapping="Wrap" Text="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" FontSize="9.333"/>
    <Label x:Name="status" Content="Status" Height="22" Margin="127,0,100,0.5" VerticalAlignment="Bottom" FontSize="9.333" Background="#00894848" Foreground="Red"/>
    <Button x:Name="raspundeBtn" Content="Raspunde" HorizontalAlignment="Right" Height="18" Margin="0,0,8,4.5" VerticalAlignment="Bottom" Width="50.974" FontSize="9.333" Click="raspundeBtn_Click"/>

</Grid>

ПЕРЕСМОТРЕНО ... введен неправильный код ... вроде как сонно здесь

Ответы [ 2 ]

3 голосов
/ 13 марта 2012

Возможно, какой-то контроль перед вашей кнопкой.Чтобы щелкнуть «через» элемент управления, вы можете использовать

IsHitTestVisible="false"

Можете ли вы опубликовать свой CommentThat?

@ после редактирования: кажется, что ваш RichTextBox и этот FlowDocument находится над кнопкой.Добавьте кнопку в качестве последнего дочернего элемента вашей сетки.

0 голосов
/ 13 марта 2012

Пользовательский элемент управления обрабатывает левую кнопку мыши, чтобы щелчок не доходил до содержимого.

    MouseLeftButtonDown="IntrebareControl_MouseLeftButtonDown"

Возникает ли это событие?

...