2014-04-10 1 views
1

저는 WPF4/C#/SDK Surface 2.0에 다소 익숙합니다. 나는 함께 연결할 수있는 여러 객체 (직사각형, 삼각형 및 다른 모양으로 상징 됨)가 포함 된 ScatterView를 갖기 위해 노력하고 있습니다.ScatterViewItem SDK Surface 2.0이있는 ScatterView에 추가

방금 ​​projet을 시작했으며 MSDN 웹 사이트에서 제공되는 다양한 표면 샘플을 공부했습니다. 그 중 하나는 명시 적으로 또는 암시 적으로 ScatterViewItem을 ScatterView에 추가하는 방법을 설명합니다.

샘플이 잘 작동

, 나는 샘플처럼 내 이벤트가 제안하고 내가 현재 다른 처리기 노력하고 취급 : 나는 AddObject_TouchDown AddObject_Click과에서 똑같은 일을하고 있어요

AddObject.Click += new RoutedEventHandler(AddObject_Click); 
AddObject.TouchDown += new EventHandler<TouchEventArgs>(AddObject_TouchDown); 

:

private void AddObject_Click(object sender, RoutedEventArgs e) 
{ 
    numObject++; 
    ScatterViewItem item = new ScatterViewItem(); 
    item.Width = 100; 
    item.Height = 60; 
    item.Background = SurfaceColors.Accent1Brush; 
    item.Content = "Object " + numObject.ToString(); 
    item.Orientation = 0; 

    myScatterView.Items.Add(item); 
} 

private void AddObject_TouchDown(object sender, TouchEventArgs e) 
{ 
    numObject++; 
    ScatterViewItem item = new ScatterViewItem(); 
    item.Width = 100; 
    item.Height = 60; 
    item.Background = SurfaceColors.Accent2Brush; 
    item.Content = "Object " + numObject.ToString(); 
    item.Orientation = 0; 

    myScatterView.Items.Add(item); 
} 

화면에서 TouchEvents를 시뮬레이트하기 위해 입력 시뮬레이터를 사용했습니다. 두 메소드가 모두 주석 처리되지 않은 경우, 항상 메소드가 호출하는 첫 번째 메소드입니다. 그리고 내가 첫 번째 (그리고 관련 핸들러)에 대해 언급 할 때, 아무 일도 일어나지 않고 왜 나는 그 이유를 이해할 수 없습니다.

내 문제에 대한 아이디어가 있습니까?

답변

1

AddObject의 유형은 무엇입니까? 그것은 버튼인가? 그렇다면 클릭 이벤트가 마우스와 터치로 모두 발생합니다. 그러나 버튼이 이미 내부적으로이 이벤트를 처리하기 때문에 TouchDown 이벤트는 실행되지 않습니다.

+0

예, 버튼입니다. 그렇다면 TouchEvent를 ScatterViewItem에 추가하려면 어떻게해야합니까? 항상 ClickEvents를 사용해야합니까? – baptiste

+0

결국 사용할 수 있습니다 AddObject.AddHandler (FrameworkElement.TouchDownEvent, myEventHandlerMethod, true); 마지막 부울 매개 변수를 사용하면 다른 곳에서 처리 된 이벤트까지 캡처 할 수 있습니다. – Dmitry

+0

팁 주셔서 감사합니다! – baptiste

관련 문제