티스토리 뷰
ListBox에 Context 메뉴를 호출하는 방법은 아래와 같이 간단히 할 수 있다.
<ListBox.ContextMenu> ... </ListBox.ContextMenu>
이렇게 하면 아이템이 선택되지 않았을 경우도 ContextMenu가 나타난다.
<ListBox x:Name="listThumbnail" Width="..." Height="..." ItemsSource="{Binding thumb}" ItemTemplate="{DynamicResource itemTemplate}" ItemsPanel="{DynamicResource panelTemplate}" ... > <ListBox.ContextMenu> <ContextMenu> <MenuItem Header="Menu1" Click="btn_Menu1" /> <MenuItem Header="..." Click="..." /> </ContextMenu> </ListBox.ContextMenu> </ListBox>
ListBox의 Item이 선택된 후에 Context 메뉴를 나타나게 하기 위해서는
ListBox의 DataTemplate 안에 StackPanel을 위치시키고, StackPanel의 ContextMenu를 호출한다.
---------------<DataTemplate x:Key="itemTemplate" > <StackPanel Orientation="Vertical" Width="..." Height="..." > <StackPanel.ContextMenu> <ContextMenu> <MenuItem Header="Menu1" Click="btn_Menu1" /> <MenuItem Header="..." Click="..." /> </ContextMenu> </StackPanel.ContextMenu> </DataTemplate>-------------------
이렇게 하면 Item이 선택되었을 때에만 메뉴가 나타난다..
'전공 > WPF 삽질들..' 카테고리의 다른 글
WPF 디자이너 오류 중 하나 (0) | 2015.02.27 |
---|---|
Disable Backspace, Navigate application (0) | 2014.03.21 |
system.windows.data error: 23 (1) | 2014.03.21 |
댓글