1
私は45x45(ハードコードされたサイズ - アイテムのグリッドの一部です)のUserControlを持っています。特定のプロパティに値がある場合、これを示す右上隅に「クリップ」を表示したい。可視性自体は簡単ですが、私の矩形はコントロールの境界を越えて他のコントロールと重なっています。私は "ClipToBounds"プロパティを使ってみましたが、何もしませんでした。これをコントロール全体に追加すると、クリップは完全に機能しましたが、主矩形のホバー効果(セルを塗りつぶします)が機能しなくなりました。WPFクリップ矩形
アイデア?私はこれが簡単だと確信していますが、まだWPF(そして幾何学的には恐ろしいですが、ポリゴンを使用していません)にはまだまだ新しくなっています。
<Grid>
<Rectangle x:Name="MainRectangle" Fill="{Binding Background}" Opacity="0" MouseEnter="MainRectangle_MouseEnter" MouseLeave="MainRectangle_MouseLeave">
<Rectangle.Triggers>
<EventTrigger RoutedEvent="Rectangle.MouseEnter">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity" From="0.0" To="0.8" Duration="0:0:0.33" AutoReverse="False" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger RoutedEvent="Rectangle.MouseLeave">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity" From="0.8" To="0.0" Duration="0:0:0.33" AutoReverse="False" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Rectangle.Triggers>
</Rectangle>
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding VisualCount}" />
<Rectangle Fill="Black" HorizontalAlignment="Right" Height="20" Margin="0,-14,-20,0" Stroke="Black" VerticalAlignment="Top" Width="20" Visibility="{Binding HasNotes}">
<Rectangle.RenderTransform>
<RotateTransform CenterX="0" CenterY="0" Angle="45" />
</Rectangle.RenderTransform>
</Rectangle>
</Grid>
パーフェクト
はここで完全なマークアップです。私は自分自身でそれを考え出しただろうとは思っていません。ありがとう! – RubyHaus
それは難しいことではない、試してみる必要があります! –