web-dev-qa-db-ja.com

WPFツールバーのドロップダウンメニュー

WPFにレイアウトのフラストレーションがある-私はToolBarを使用して一連のコントロールを収容しています。そのほとんどはボタンであり、そのうちの1つは(ある種の)ドロップダウンメニューです。 WinFormsでは、ToolStripDropDownButtonは完璧でした。ただし、この動作をWPFで再現するための最良の方法を理解できていないようです。

何か案は?

21
egoodberry

ツールバー内にMenu&MenuItemを配置してみてください。ドロップダウンメニューの動作を取得するには、インターフェイスのさまざまな部分(クラシックメニュー以外)でMenuとMenuItemツリーを使用する必要がありました。メニューのコントロールテンプレートを微調整して、好きなようにルックアンドフィールをスカルプトし、バニラメニューのルックアンドフィールを完全に破棄できます。

次に、簡単な実装を示すXAMLをいくつか示します。

<Window x:Class="Window1"
xmlns="http://schemas.Microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.Microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<StackPanel>
    <ToolBar>
            <Button Content="Button1"></Button>
            <Button Content="Button2"></Button>
            <Menu>
                <MenuItem Header="Menu">
                    <MenuItem Header="MenuItem1"/>
                </MenuItem>
            </Menu>
    </ToolBar>
</StackPanel>
33
gbc