WPF框架内部StackPanel不会触发事件
我动态创建一个框架并将其添加到堆栈面板的子项中。鼠标事件工作正常,但由于某种原因停止。任何帮助表示赞赏。这里就是我创建它们:WPF框架内部StackPanel不会触发事件
Frame newFrame = new Frame();
Page current = Globals.Static.GetCurrentProcess() as Page;
current.Width = 1199; // Doing this here forces the scaletransform to shrink entire app -- must be done on the page
newFrame.Content = current;
newFrame.Width = 384;
newFrame.Height = 288; // Doing this here will limit the shrunk app's height -- must be done on the frame
newFrame.MouseDoubleClick += new MouseButtonEventHandler(newFrame_MouseDoubleClick);
newFrame.Name = current.Title + "_Frame";
this.stackRunning.Children.Add(newFrame);
Separator newSeparator = new Separator();
newSeparator.Name = current.Title + "_Separator";
this.stackRunning.Children.Add(newSeparator);
stackRunning
是在主窗口中的空白StackPanel
。在事件处理程序中,我只是创建一个变量,然后我停下来。它永远不会起火。
您的鼠标点击可能会被子元素吞噬,但使用PreviewMouseDoubleClick
可能会有所帮助。
由于没有背景,您的框架可能无法击中。你有没有尝试设置背景?
是的,我将背景设置为纯色......仍然不行。 – 2011-02-05 16:01:27
可能不是OP的问题,但绝对是我的。谢谢! – devuxer 2011-11-17 01:59:30
我发现了原因。我为scrollviewer添加了一些新的重载滚动条代码,并且它吸引了很多东西。多谢你们。
我试过MouseDown,PreviewMouseDown和PreviewMouseDoubleClick ...都没有火。这很奇怪......这是工作,突然停止。 – 2011-02-05 16:01:03