私のアクティビティの中には、ユーザーがデザイナーを折りたたんだときにタイトル バーを表示するだけで完全に折りたたむことを好むものがあります。デフォルトでは、折りたたみ可能なデザイナーの標準的な方法(ShowExpanded で datatrigger を使用) を使用している場合でも、タイトル バーの下に空の白い四角形が表示されます (少なくとも .NET 4.0.3 を使用する Win7 では)。
タイトルの下にボックスを表示せずに、上記の Delay アクティビティと同じように表示したいと思います。
この迷惑な白いボックスは、リソースWorkflowElementDesignerDefaultTemplateで定義されているデフォルト テンプレートが原因であると思われます。このテンプレートには、Margin="7" の ContentPresenter があります。
<ContentPresenter x:Uid="ContentPresenter_1" Margin="7" Content="{Binding Path=Content, RelativeSource={RelativeSource AncestorType={x:Type swd:WorkflowViewElement}}}" Grid.Row="1">
<ContentPresenter.Style>
<Style x:Uid="Style_10">
<Setter x:Uid="Setter_204" Property="ContentPresenter.Visibility" Value="Visible" />
<Style.Triggers>
<DataTrigger x:Uid="DataTrigger_237" Binding="{Binding Path=Content, RelativeSource={RelativeSource AncestorType={x:Type swd:WorkflowViewElement}}}" Value="{x:Null}">
<Setter x:Uid="Setter_213" Property="ContentPresenter.Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</ContentPresenter.Style>
</ContentPresenter>
そのため、アクティビティ デザイナー XAML で定義した含まれるものが完全に折りたたまれても、この 7 のマージンは引き続き表示されます。
それを回避する方法はありますか?デザイナーが折りたたまれた状態で表示される場合、マージンを 0 に設定します (または、デフォルト テンプレートから含まれる ContentPresenter に対して Visibility=Collapsed をトリガーすることをお勧めします)。
(あまり混乱していないことを願っていますか?)