0
이벤트 핸들러에 listbox의 ItemContainerStyle로 바인드 된 contextmenu menuitem을 지정하는 데 문제가 있습니다. 응용 프로그램에서 마우스 오른쪽 버튼을 클릭하고 목록 항목을 호출하면 헤더 이름과 system.window.style이라는 중첩 항목을 보여주는 컨텍스트 메뉴가 나타납니다. 의 MenuItem 중첩Contextmenu menuitem이 제대로 호출되지 않습니다.
<ListBox HorizontalAlignment="Left" Margin="6,90,0,0" Name="listbox1" Width="189" FontSize="14" Height="416" VerticalAlignment="Top">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="ContextMenu">
<Setter.Value>
<ContextMenu>
<MenuItem Header="Delayed Kick" >
<Style TargetType="MenuItem">
<EventSetter Event="Click" Handler="DelayedKick_Click"/>
</Style>
</MenuItem>
</ContextMenu>
</Setter.Value>
</Setter>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
다른 컨텍스트 메뉴 메뉴 항목에 다른 이벤트 처리기를 지정하려면 어떻게해야합니까? – paradox
당신은 지금 내 지식에 과세하고있다. (나는 당신이 자원으로 여러 아이템 컨테이너 스타일을 가질 필요가 있다고 생각한다.) 각각은 서로 위에 명시된 다른 명시적인 MenuItem 스타일을 가질 것이다. ListBox.ItemContainerStyleSelector를 사용하여 각 목록 상자 항목의 올바른 스타일을 선택합니다. – Phil