티스토리 뷰

C#/WPF

WPF tutorial - The WPF Menu control

광그로 2017. 6. 29. 21:04

http://www.wpf-tutorial.com/common-interface-controls/menu-control/


WPF는 Menu 컨트롤을 생성함으로써 메뉴를 만들 수 있습니다. 또한, MenuItem elemtent를 추가하여 매우 간단하게 Item을 추가할 수 있습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<DockPanel>
        <Menu DockPanel.Dock="Top">
            <MenuItem Header="_File">
                <MenuItem Header="_New">
                    <MenuItem Header="_Text"></MenuItem>
                    <MenuItem Header="_Image"></MenuItem>
                </MenuItem>
                <MenuItem Header="_Open"/>
                <MenuItem Header="_Save"/>
                <Separator />
                <MenuItem Header="_Exit"/>
            </MenuItem>
        </Menu>
    </DockPanel>

cs



<MenuItem Header="_File"> Header에서 정의할 때 _(언더바)를 사용합니다. "_File"은 F를 단축키와 같이사용할 수 있게 합니다.

[ALT]를 누르고 [F] 등을 누르면 해당 메뉴의 항목으로 이동합니다.



Icons and checkboxes


WPF의 MenuItem은 icon과 특정 기능을 키고 끌 수 있는 menuitem을 지원합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<DockPanel>
        <Menu DockPanel.Dock="Top">
            <MenuItem Header="_File">
                <MenuItem Header="_Exit" />
            </MenuItem>
            <MenuItem Header="_Tools">
                <MenuItem Header="_Manage users">
                    <MenuItem.Icon>
                        <Image Source="D:\Visual Studio 2017\Project\WPF tutorial\WPF tutorial\noun_543787_cc.png" />
                    </MenuItem.Icon>
                </MenuItem>
                <MenuItem Header="_Show groups" IsCheckable="True" IsChecked="True" />
            </MenuItem>
        </Menu>
    </DockPanel>
cs


IsCheckable 속성을 사용하여 사용자가 항목의 선택 및 취소를 가능하게 합니다.

IsChecked 속성을 사용하여 기본적으로 체크가 되게 하였습니다.


Handling clicks


메뉴항목을 선택하여 어떠한 이벤트가 발생하게 하기 위해서는 아래와 같이 해야합니다.

1
2
<MenuItem Header="_Exit" Click="MenuItem_Click"/>
 
cs
1
2
3
4
private void MenuItem_Click(object sender, RoutedEventArgs e)
{
         Application.Current.Shutdown();
}
cs


Keyboard Shortcuts and Commands


1
2
3
<Window.CommandBindings>
        <CommandBinding Command="New" CanExecute="CommandBinding_CanExecute" Executed="CommandBinding_Executed"></CommandBinding>
</Window.CommandBindings>
cs

CommandBindings 를 사용하여 새로운 command를 만들고, 바인딩합니다.

1
2
3
4
5
6
7
8
9
10
11
12
<Menu DockPanel.Dock="Top">
            <MenuItem Header="_File">
                <MenuItem Command="New" />
                <Separator />
                <MenuItem Header="_Exit" />
            </MenuItem>
            <MenuItem Header="_Edit">
                <MenuItem Command="Cut" />
                <MenuItem Command="Copy" />
                <MenuItem Command="Paste" />
            </MenuItem>
        </Menu>
cs



'C# > WPF' 카테고리의 다른 글

WPF tutorial - The WPF ToolBar control  (0) 2017.07.01
WPF tutorial - The WPF ContextMenu  (0) 2017.07.01
WPF tutorial - The other dialogs  (0) 2017.06.29
WPF tutorial - The SaveFileDialog  (0) 2017.06.29
WPF tutorial- The OpenFileDialog  (0) 2017.06.29
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함