ScatterViewItem使用SDK Surface 2.0添加到ScatterView

时间:2014-04-10 09:58:05

标签: c# wpf events event-handling pixelsense

我是WPF4 / C#/ SDK Surface 2.0的新手。我试图让ScatterView包含几个可以链接在一起的对象(用矩形,三角形和其他形状表示)。

我刚刚开始我的项目,我研究了MSDN网站上提供的不同表面样本。其中一个解释了如何显式或隐式地将ScatterViewItem添加到ScatterView。

示例运行良好,我处理了我的事件,如示例建议,我正在尝试其他处理程序:

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

我在AddObject_Click和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 个答案:

答案 0 :(得分:1)

AddObject的类型是什么?是按钮吗?如果是,则使用鼠标和触摸触发Click事件。但是,TouchDown事件永远不会触发,因为该按钮已在内部处理此事件。