0
itemscontrolのアイテムとしてボタンがあります。ボタンをクリックすると、ボタンをクリックすると、そのボタンが再度クリックされるまで強調表示されます(ischeckedプロパティ)。私の問題は、このボタンを相互に排他的にチェックする必要があることです。いつでも、ハイライト表示されるボタンは1つだけにしてください。私はitemscontrolを使用しています。なぜなら、割り当てられた幅まで水平に塗りつぶし、次の行に進むようにボタンをラップすることができるからです。itemscontrolの相互に排他的なボタン
<ItemsControl ItemsSource="{Binding Path=NewItemsList,ElementName=newitemcontrol}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel Orientation="Horizontal" >
</WrapPanel>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<dc:ButtonDropDown Name="SubItems" Width="120"
Height="120" ItemsSource="{Binding Path=DataContext.Children, RelativeSource={RelativeSource Mode=Self}}" Header="{Binding Path=DataContext.DisplayName, RelativeSource={RelativeSource Mode=Self}}" Command="{Binding Path=ChangeSubItem, ElementName=newitemcontrol}" CommandParameter="{Binding DataContext, RelativeSource={RelativeSource Mode=Self}}" ImageSource="{Binding Path=DataContext.ImageUri, RelativeSource={RelativeSource Mode=Self}}" ImagePosition="Top" IsCheckable="True" >
</dc:ButtonDropDown>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
トグルボタンを試す – Phil
これは、GroupNameプロパティを使用してRadioButtonで行うことができます。私はdcについて知りません:ButtonDropDown –
また、項目が静的要素である場合は( 'ItemsControl'ではなく)' Panel'を使用することができます –