Ответ 1
VisualBrush может использоваться, чтобы приблизиться к тому, что вы хотите, но имеет некоторые ограничения.
Пока вам нужен только стеклянный эффект внутри окна (и не влияйте на другие окна), и что расположение границы эффекта стекла контролируется плотно, тогда вы можете сделать что-то вроде этого: -
<Grid>
<Border x:Name="src" Background="Silver">
<Label HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="50">Hello World</Label>
</Border>
<Border Background="White" Margin="40" >
<Border Opacity="0.5" >
<Border.Effect>
<BlurEffect Radius="10"/>
</Border.Effect>
<Border.Background>
<VisualBrush Visual="{Binding ElementName=src}" Stretch="None" />
</Border.Background>
</Border>
</Border>
</Grid>
Я не думаю, что дочерний элемент в визуальном дереве может получить VisualBrush этого родителя, чтобы это могло быть ограничением для вас. (то есть стеклянная панель не может содержаться на фоновой панели)
Я использовал VisualBrushes много раз, как правило, с помощью TranslateTransforms, чтобы немного перемещать их, чтобы получить правильное изображение в нужном месте.
Обновление:
Изменено XAML
, чтобы использовать Effect
, а не BitmapEffect
, который медленнее и теперь обесценивается, как упоминалось в комментариях ниже Стивена Роббинса.