2010-12-16 7 views
3

응용 프로그램 막대에 일부 단추가있는 wp7이 있습니다. 각 버튼을 누르면 응용 프로그램 모음의 메뉴 항목 인 menuItem이 변경됩니다. 그런 다음 응용 프로그램 모음 단추를 누르면 자동으로 메뉴를 열려고합니다.프로그래밍 방식으로 응용 프로그램 메뉴 표시 (wp7)

하지만 SDK가 나에게 그렇게 할 수 없습니다 것으로 보인다.

당신은 주변에 어떤 일을 알고 계십니까? 내가 생각

위가 가능하지 않은 경우, 메뉴를 열려면 화면 오른쪽 하단에 사용자의 손가락 클릭을 시뮬레이션합니다. 그것에 대한 아이디어가 있습니까?

고지 사전

답변

2

필자는이 기능이 아직 공개되지 않았다는 것을 알고 있습니다. 그것은 베타 기간 동안 가능하지 않았고 그 이후로 변경된 사항을 발견하지 못했습니다. 언제든지 제안 포럼에 댓글을 달거나 connect (vs/wpdt)에서 발표 할 수 있습니다.

+0

하나는 사용자가 굉장 액션 –

5

는 아래의 코드와 같이 아이콘 버튼 클릭에 대한 응답으로 응용 프로그램 바 메뉴 항목을 변경할 수 있습니다.

는 방법이 없다 통해 코드를 통해 강제로 개방 (또는 닫기) 응용 프로그램 바.

는 또한이 실제 페이지의 일부가 아니기 때문에 애플리케이션 바상의 손가락 클릭을 시뮬레이션하는 것은 불가능하다. 기기가 가로 방향 인 경우 가능한 한 클릭이 오른쪽 위 또는 왼쪽 아래에 있어야합니다.

public partial class MainPage : PhoneApplicationPage 
{ 
    private ApplicationBar appbar; 
    public MainPage() 
    { 
     InitializeComponent(); 
     Loaded += new RoutedEventHandler(MainPage_Loaded); 
    } 

    void MainPage_Loaded(object sender, RoutedEventArgs e) 
    { 
     appbar = new ApplicationBar(); 

     var ib1 = new ApplicationBarIconButton(new Uri("/images/one.png", UriKind.Relative)) { Text = "Option one" }; 
     ib1.Click += new EventHandler(ShowMenuOption1); 

     var ib2 = new ApplicationBarIconButton(new Uri("/images/two.png", UriKind.Relative)) { Text = "Option two" }; 
     ib2.Click += new EventHandler(ShowMenuOption2); 

     appbar.Buttons.Add(ib1); 
     appbar.Buttons.Add(ib2); 

     // Show menu option 1 as default 
     DisplayMenuOption1(); 

     this.ApplicationBar = appbar; 
    } 

    private void DisplayMenuOption1() 
    { 
     appbar.MenuItems.Clear(); 

     var itemA = new ApplicationBarMenuItem("AAAA"); 
     var itemB = new ApplicationBarMenuItem("BBB"); 

     appbar.MenuItems.Add(itemA); 
     appbar.MenuItems.Add(itemB); 
    } 

    private void DisplayMenuOption2() 
    { 
     appbar.MenuItems.Clear(); 

     var itemC = new ApplicationBarMenuItem("CCCC"); 
     var itemD = new ApplicationBarMenuItem("DDDD"); 

     appbar.MenuItems.Add(itemC); 
     appbar.MenuItems.Add(itemD); 
    } 

    private void ShowMenuOption2(object sender, EventArgs e) 
    { 
     DisplayMenuOption2(); 
    } 

    private void ShowMenuOption1(object sender, EventArgs e) 
    { 
     DisplayMenuOption1(); 
    } 
} 
+0

을해야 함을 열 수 없습니다 :

다음은 메뉴 항목을 변경하는 방법을 보여줍니다 일부 코드입니다. 그냥 내가 뭘 찾고 있었는지! – webdad3

관련 문제