このプロパティはあまり使わないかもしれませんが、MSDNの説明を見てください。

的非常
说说说我的理解吧把这个属性设置为 false,看起没有变化,但操作上已经把他完全无视了,不发起事件,可以直接点到它下的东西。
这个属性能便利的解决工作中常见的迷惑,例えば次の例
)
上の部分に注意。效果很简单,就是个グラデーション的效果.但是这个勾配穿了两列,就使使使取扱起来有点小烦。
もちろん、ソリューションはたくさんあります。
可以写两个 ListBoxItem 的スタイル,第一个放上上有グラデーション的背景,和右部保持一致,通过スタイルセレクタ来実現。これは明らかに厄介です。
还可以在大背景下放个,ListBoxItem 的上半部分作成透明,这样相対简単,但一定能能理想的。
IsHitTestVisibleプロパティはこの問題をうまく解決します。直接在上层放个border背景设置成グラデーションIsHitTestVisible 设置为 false.这样就既能看到グラデーション效果,又能透过border直接点到 ListBoxItem.设置一个属性就解决了问题,非常に便利.当该在上面置了个ステンシル,但是这个ステンシル能看到却点不到点。
私も同じようなシーンを考えました。

这个效果顶层是个图片,IsHitTestVisible 为 false,透明为 0.3.
并不是图片是个背景,然后所有制御都是半透明效果。
コードはこちら。
XMAL:
<Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="70"></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition Height="50"></RowDefinition>
</Grid.RowDefinitions>
<Border Background="#555F5F">
<label Content="logo" Foreground="White"></label>
</Border>
<Grid Grid.Row="1" Background="#AAAFAF">
<StackPanel
HorizontalAlignment="Center"
VerticalAlignment="Center"
Button.Click="StackPanel_Click"
>
<button Width="132" Height="32" Content="金闪闪" Margin="10"></button>
<button Width="132" Height="32" Content="小圆" Margin="10"></button>
</StackPanel>
<label
Content="我不透明"
Background="Green"
Foreground="Blue"
Width="100"
Height="100"
Margin="76,29,266,171"
></label>
<label
Content="我不透明"
Background="Red"
Foreground="Blue"
Width="100"
Height="40"
Margin="112,40,230,220"
></label>
</Grid>
<Border Grid.Row="2" Background="#555F5F">
<label Content="状态栏" Foreground="White"></label>
</Border>
</Grid>
<image
Name="img"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="0"
Height="0"
Source="/Image/jinshanshan.jpg"
Stretch="Fill"
Opacity="0.1"
IsHitTestVisible="False"
></image>
</Grid>
バックグラウンドViewCube
private void StackPanel_Click(object sender, RoutedEventArgs e)
{
Button btn = (Button)e.OriginalSource;
string content = btn.Content.ToString();
if (content == "金闪闪")
{
img.Source = new BitmapImage(new Uri(@"/Image/jinshanshan.jpg", UriKind.Relative));
}
if (content == "小圆")
{
img.Source = new BitmapImage(new Uri(@"/Image/xiaoyuan.jpg", UriKind.Relative));
}
DoubleAnimation daX = new DoubleAnimation();
daX.From = 0;
daX.To = 400;
daX.FillBehavior = FillBehavior.HoldEnd;
Storyboard.SetTarget(daX, img);
Storyboard.SetTargetProperty(daX, new PropertyPath(Image.WidthProperty));
DoubleAnimation daY = new DoubleAnimation();
daY.From = 0;
daY.To = 400;
daY.FillBehavior = FillBehavior.HoldEnd;
Storyboard.SetTarget(daY, img);
Storyboard.SetTargetProperty(daY, new PropertyPath(Image.HeightProperty));
DoubleAnimation daOp = new DoubleAnimation();
daOp.From = 1;
daOp.To = 0.3;
daOp.FillBehavior = FillBehavior.HoldEnd;
Storyboard.SetTarget(daOp, img);
Storyboard.SetTargetProperty(daOp, new PropertyPath(Image.OpacityProperty));
Storyboard sb = new Storyboard();
sb.Children.Add(daX);
sb.Children.Add(daY);
sb.Children.Add(daOp);
sb.Begin();
}