我是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。如果两个方法都取消注释,则它始终是程序调用的第一个方法。当我评论第一个(和它的相关处理程序)时,什么也没发生,我无法理解为什么。
有人对我的问题有所了解吗?
答案 0 :(得分:1)
AddObject的类型是什么?是按钮吗?如果是,则使用鼠标和触摸触发Click事件。但是,TouchDown事件永远不会触发,因为该按钮已在内部处理此事件。