8

いくつかのアイテムを表示する ListBox があり、特定のモードでは、その上部に一種の透かしを「スタンプ」します。Opacity が 0.5 の TextBlock を含む Border でこれを行いました。これはすべてうまく機能します。

ただし、ユーザーが ListBox 内の項目をクリックできるようにしたいのですが、「スタンプ」をクリックすると、明らかにクリック イベントが消費され、ListBox には表示されません。

これを防ぐにはどうすればよいですか?(つまり、ListBox が Click イベントを認識できるようにする)

ありがとう、

クレイグ

4

1 に答える 1

16

IsHitTestVisibleプロパティを使用してこれを行うことができます。

<Grid xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <ListBox>
        <ListBoxItem>a</ListBoxItem>
        <ListBoxItem>b</ListBoxItem>
        <ListBoxItem>c</ListBoxItem>
    </ListBox>
    <Border Opacity="0.2" Background="Cyan" BorderBrush="Black" BorderThickness="5" IsHitTestVisible="False" >
        <TextBlock Text="EXAMPLE" FontSize="20" HorizontalAlignment="Center" VerticalAlignment="Center"/>
    </Border>
</Grid>
于 2008-12-16T22:14:00.913 に答える