我有一个使用WindowsFormsHost控件来承载Windows.Forms控件的WPF应用程序。
我试图实现MouseWheel事件--但似乎MouseWheel事件从未触发过。
是否有解决此问题的方法?
发布于 2012-03-21 23:32:58
解决方法是使用event MouseEnter。
假设您在WindowsFormHost中有一个winform标签
在XAML中
<WindowsFormsHost Height="100" Name="windowsFormsHost1" Width="200" />在C#中
System.Windows.Forms.Label label = new System.Windows.Forms.Label();
label.Text = "Hallo";`
label.MouseEnter += new EventHandler(label_MouseEnter);
label.MouseWheel += new System.Windows.Forms.MouseEventHandler(label_MouseWheel);
windowsFormsHost1.Child = label;.
void label_MouseEnter(object sender, EventArgs e)
{
(sender as System.Windows.Forms.Label).Focus();
}
void label_MouseWheel(object sender, System.Windows.Forms.MouseEventArgs e)
{
(sender as System.Windows.Forms.Label).BackColor = System.Drawing.Color.Red;
}现在MouseWheel应该可以工作了(标签应该会改变颜色)
发布于 2012-09-17 13:58:05
我要补充的一件事..。如果WindowsFormsHost的子元素是Windows.Forms元素,则此链接会有所帮助。
http://vastpark-svn.cvsdude.com/public/trunk/src/Sample.Client/WPFInputSource.cs
为什么我发布的帖子是我正在寻找一个解决方案,并发现..所以我想这可能会对将来的某个人有所帮助。不管怎样,谢谢你先问我^^
https://stackoverflow.com/questions/9807032
复制相似问题