タイトルが示すように、一部のコンテンツを動的に非表示または表示したいと考えています。ラジオボタンのように機能する2つのボタンがあります。各ボタンは特定のコンテンツを表示する必要がありますが、2 つのコンテンツが同時に表示されないようにする必要があります (これは一種のフォームであり、2 つのサブクラスに取り組んでいます)。
SO で興味深いものを 2 つ見たので、それらを混ぜてみたいと思いました。まず、ToggleButton での ContentControl の使用 (http://stackoverflow.com/questions/7698560/how-to-bind-click-of-a-button-to-change-the-content-of-a-panel- grid-using-xaml)。次に、ToggleButtons を RadioButtons として使用します (http://stackoverflow.com/questions/2362641/how-to-get-a-group-of-toggle-buttons-to-act-like-radio-buttons-in-wpf 2 つ目の回答と 31)
だから私はそのようなものから始めることにしました:
<ContentControl>
<ContentControl.Template>
<ControlTemplate>
<WrapPanel HorizontalAlignment="Center">
<TextBlock Text="{x:Static Internationalization:Resources.MAINOPTIONSWINDOW_STATUSLINKSUPERVISOR}"/>
<RadioButton Style="{StaticResource {x:Type ToggleButton}}" Content="Alarm" GroupName="Trigger"/>
<RadioButton Style="{StaticResource {x:Type ToggleButton}}" Content="Event" GroupName="Trigger"/>
</WrapPanel>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
しかし、Visual Studio は下線を引いています
{StaticResource {x:Type ToggleButton}}
視覚的には、ボタンはトグル ボタンではなく、ラジオ ボタンのように見えます。ビジュアルは次のように述べています。
リソース「{StaticResource {x:Type ToggleButton}}」を解決できません (フランス語からの翻訳;))
とにかく、このコードは ContentControl の外で正常に動作します。