현재 동적으로 생성 된 상황에 맞는 메뉴를 만들려고합니다. 컨텍스트 메뉴의 ItemsSource
속성에 현재 ObservableCollection<MenuItem>
을 바인딩하고 있습니다. 이제 내가 선택한 항목에 따라 메뉴가 열리면 목록에있는 항목의 가시성을 설정하려고합니다.
나는이메뉴 열기 속성을 설정하는 메뉴 항목
public class CtContextMenuItem : MenuItem
{
public delegate Visibility VisibilityDelegate();
public VisibilityDelegate IsVisibleDelegate = null;
}
처럼 MenuItem
에서 상속 노력 그리고 상황에 맞는 메뉴가 열릴 때 VisibilityDelegate
의 결과에 Visibility
을 설정할하지만 난 MenuItem
에서 호출되는 모든 이벤트 또는 방법을 찾을 수 없습니다 상황에 맞는 메뉴가 열려있을 때
할 방법이 있습니까 아니면 ContextMenuOpening
을 듣는 함수 안에 메뉴의 모든 항목을 만들어야합니까?
* - 예. 메뉴 항목을 열거하고 해당 대리인을 직접 또는 속성을 통해 호출합니다 (데이터 템플릿 바인딩이 사용되는 경우). 사용자 정의 컨트롤을 사용하는 대신 [mvvm] (https://stackoverflow.com/q/15566824/1997232)을 약간 추가하십시오. – Sinatr