현재 일부 상황에 맞는 메뉴 항목에서 반복해야하는 작은 프로젝트에서 작업하고 있습니다. 이 메뉴는 마우스 오른쪽 버튼 클릭 컨텍스트 메뉴로 시작하여 다양한 색상으로 나눈 다음 오브젝트로 분기됩니다. 선택한 색상 및 객체에 따라 양식의 객체가 변경됩니다. 그것은 꽤 지저분하지만, 불행히도 나는 이것을 끝내기위한 더 쉬운 방법을 볼 수 없다. (고맙게도 오직 하나의 메뉴만으로 끝난다.)foreach 루프를 사용하여 반복 된 상황에 맞는 메뉴 항목을 반복합니다.
내가 메뉴 항목과 색상을 생성하고 추가하지만, 각 색상 등과 같은 8 개체를 반복했다 : 첫째
foreach (MenuItem i in colors.MenuItems)
{
MenuItem one = new MenuItem();
one.Text = "One";
MenuItem two = new MenuItem();
two.Text = "Two";
MenuItem three = new MenuItem();
three.Text = "Three";
MenuItem four = new MenuItem();
four.Text = "Four";
MenuItem five = new MenuItem();
five.Text = "Five";
MenuItem six = new MenuItem();
six.Text = "Six";
MenuItem seven = new MenuItem();
seven.Text = "Seven";
MenuItem eight = new MenuItem();
eight.Text = "Eight";
i.MenuItems.Add(one);
i.MenuItems.Add(two);
i.MenuItems.Add(three);
i.MenuItems.Add(four);
i.MenuItems.Add(five);
i.MenuItems.Add(six);
i.MenuItems.Add(seven);
i.MenuItems.Add(eight);
}
먼저 일을, 나는 모든 오브젝트 메뉴 항목을 가지고 비효율적 생각 foreach 루프 내에서 만들어지기 때문에 나는 그것들을 바로 전에 옮겼습니다. 이 작업을 수행 할 때 객체는 최종 색상에만 추가되었습니다. 이것은 다소 이상하게 보였습니다. 왜 누군가가 이런 일이 일어 났는지 설명 할 수 있다면 고맙겠습니다.
두 번째로, 사람이 선택하는 메뉴 선택에 따라 마우스 오른쪽 단추로 클릭 한 개체를 변경하는 것이 계획입니다. 각 개별 메뉴 항목에 대해 Menu.Click 이벤트를 갖는 것 이외의 다른 메뉴 항목을 가져 오는 더 쉬운 방법이 있습니까?
도움을 주시면 감사하겠습니다. 사전에
감사합니다, 밥
이 WPF 또는 WinForms입니까? –