首页 / C# / c# – 处理按钮外的点击事件
c# – 处理按钮外的点击事件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 处理按钮外的点击事件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1854字,纯文字阅读大概需要3分钟。
内容图文
我正在尝试通过复制Apple AppStore中的应用程序来练习c#.
在应用程序中,有一个带有文本的矩形:“触摸我”.当您触摸它时,矩形会重新定位.
在您执行此操作几次后,文本将更改为“请勿触摸我”.在这种情况下,您必须触摸矩形外部.
一切顺利,直到你必须触摸矩形外面.
这是我的事件处理程序:
private void Canvas_MouseLeftButtonDown_1(object sender, MouseButtonEventArgs e)
{
if (click == 0)
{
if (rectangle1.IsMouseOver || textBlock1.IsMouseOver)
{
// reposition and stuff
if (clicks == 10)
{
// Change the value of the variable click to 1
click = 1;
textBlock1.Text = "Do Not Click me";
Canvas.SetLeft(textBlock1, 200);
}
}
}
else
{
if (rectangle1.IsMouseOver || textBlock1.IsMouseOver)
{
// Game Over
this.Close();
} else
{
// reposition and stuff
click = 0;
textBlock1.Text = "Click me";
Canvas.SetLeft(textBlock1, 225);
}
}
}
该程序完美地工作到您必须在矩形外部单击的位置.
单击矩形时程序将关闭,但当您在外部单击时,没有任何反应.
是否有任何事件处理程序可以完成我想要的任务?
这是我的xaml
<Window x:Class="ClickMe.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="510" Width="525" ResizeMode="NoResize">
<Canvas Name="canvas" MouseLeftButtonDown="Canvas_MouseLeftButtonDown_1">
<Rectangle Fill="#FFF4F4F5" Name="rectangle1" HorizontalAlignment="Left" Height="38" Stroke="Black" VerticalAlignment="Top" Width="509" Canvas.Left="0" Canvas.Top="63"/>
<Label Name="label1" Content="0" Canvas.Left="57" Canvas.Top="446"/>
<Label Content="Klicks:" Canvas.Left="10" Canvas.Top="446"/>
<TextBlock Name="textBlock1" Canvas.Left="225" TextWrapping="Wrap" Text="Click Me" Canvas.Top="74" Margin="10,0,0,0"/>
</Canvas>
解决方法:
你真的只需要设置画布的背景,因为它只在鼠标输入“渲染内容”的地方.背景甚至可以是透明的:
<Canvas Name="canvas" Background="Transparent"
MouseLeftButtonDown="Canvas_MouseLeftButtonDown_1">
...
</Canvas>
内容总结
以上是互联网集市为您收集整理的c# – 处理按钮外的点击事件全部内容,希望文章能够帮你解决c# – 处理按钮外的点击事件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。