如何在WPF中绘制可点击的矩形

2024-03-09

我是 WPF 应用程序的绝对初学者,需要一些帮助。我想做的就是从 A 点到 B 点画一个矩形,and能够检测何时单击矩形。因此,当单击它时,它会变成黄色,再次单击时,它会变成红色。


有多种方法可以做到这一点。

  1. 向矩形添加单击处理程序,并从后面的代码切换其颜色
  2. 将矩形的颜色绑定到视图模型属性,并使用委托命令在单击时设置该属性。

如果您刚刚开始使用 XAML,第一个是最简单的(尽管如果您想遵守 MVVM,建议使用#2)。

 <Rectangle x:Name="rect" 
    Width="100" Height="100" Fill="Aquamarine" 
    MouseLeftButtonDown="Rectangle_MouseLeftButtonDown" />

以及代码隐藏处理程序:

 bool toggle = false;

 private void Rectangle_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
 {
     rect.Fill = new SolidColorBrush(toggle ? Colors.Aquamarine : Colors.DarkRed);
     toggle = !toggle;
 }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在WPF中绘制可点击的矩形 的相关文章

  • 套接字编程-listen() 和accept() 有什么区别?

    我一直在读本教程 http www cs rpi edu moorthy Courses os98 Pgms socket html了解套接字编程 看来listen and accept 系统调用都做同样的事情 即阻塞并等待客户端连接到使用
  • 在异步请求中使用超时回调

    我之前问过这个问题 但我将用提出的解决方案来完成这个问题 并提出另一个问题 我正在使用这个类来进行异步网络请求 http msdn microsoft com en us library system net webrequest aspx
  • std::bind2nd 和 std::bind 与二维数组和结构数组

    我知道 C 有 lambda 并且 std bind1st std bind2nd 和 std bind 已弃用 然而 从C 的基础开始 我们可以更好地理解新特性 所以 我从这个非常简单的代码开始 使用int 数组s 第一个例子 与std
  • ASMX Web 服务,测试表单仅在本地计算机上适用于一种 WebMethod

    我有一个正在测试的 ASMX WebService 并且在大多数方法上我都可以使用测试表单进行测试 然而 我确实有一种方法 测试表上写着 The test form is only available for requests from t
  • 尽管浮点数相同,但它们并不相等? [复制]

    这个问题在这里已经有答案了 下面的程序输出This No is not same 当两个数字相同时为什么会这样做 void main float f 2 7 if f 2 7 printf This No is same else prin
  • 打开位置设置页面或提示用户启用位置

    我一直在绞尽脑汁 徒劳地谷歌搜索 我正在尝试找到一种方法来提示用户通过直接进入设置页面或仅点击屏幕上的 是 来切换位置 我见过的所有代码似乎都不起作用 有人有有效的方法吗 一个详细的例子将不胜感激 谢谢 我对 Xamarin 开发非常陌生
  • 根据 Active Directory 策略检查密码[重复]

    这个问题在这里已经有答案了 我有一个允许用户更改其 AD 密码的前端 有没有办法获取特定用户及其属性 长度 复杂性 的密码策略 例如细粒度 有没有办法根据此特定策略检查字符串 xyz121 编辑 我不想检查活动目录中存储的当前密码 我想检查
  • 从二进制文件读取字节到 long int

    我有两个问题 我有二进制文件的数据 我想使用 read 函数读取前 8 个字节以签署 long int 但我不能 你知道我该怎么做吗 如何直接读取一块数据到字符串中 我可以像所示那样阅读吗 前任 ifstream is is open te
  • Web 文本编辑器中的 RTF 格式

    网络上是否有支持 RTF 格式文档输入的文本编辑器 我知道这对 webdev 来说有点奇怪 但我需要从数据库中读取 RTF 文档 并在基于 Web 的文本编辑器中对其进行编辑 然后将其存储回 RTF 中 在我在转换工具上投入太多资金之前 我
  • 如果我重新分配并且新大小为 0,会发生什么情况。这与释放等效吗?

    给出以下代码 int a NULL a calloc 1 sizeof a printf d n a a realloc a 0 printf d n a return 0 它返回 4078904 0 这个 realloc 相当于 free
  • 确定相关词的编程方式?

    使用网络服务或软件库 我希望能够识别与词根相关的单词 例如 座位 和 安全带 共享词根 座位 但 西雅图 不会被视为匹配 简单的字符串比较对于这类事情似乎是不可行的 除了定义我自己的字典之外 是否有任何库或 Web 服务不仅可以返回单词定义
  • 文件加密与解密问题

    我一直在尝试在 VC Express 2010 中加密和解密文件 我见过的所有教程和文档都需要两个FileStreams 来加密文件 一个用于读取未加密的版本 另一个用于加密 当我实际编写代码时 它不断抛出错误 告诉我它无法打开该文件 因为
  • 在 Windows 上使用 C/C++ 开发时省略 msvcr100.dll?

    是否可以在 Windows 上使用 C C 进行开发而不链接到 msvcr100 dll 我知道这是 Windows 的标准 c 库 但我想知道如果我没有安装 Visual Studio 或 Redistributable 软件包 我的计算
  • List 或其他类型上的 string.Join

    我想将整数数组或列表转换为逗号分隔的字符串 如下所示 string myFunction List
  • Code::Blocks 中的调试似乎不起作用 - 缺少调试符号

    我正在尝试在 Code Blocks 中调试程序 我跟着本指南 http wiki codeblocks org index php title Debugging with Code Blocks and 这个短视频 http www y
  • XCode std::thread C++

    对于学校的一个小项目 我需要创建一个简单的客户端 服务器结构 它将在路由器上运行 使用 openWRT 并且我试图在这个应用程序中使用线程做一些事情 我的 C 技能非常有限 所以我在internet https stackoverflow
  • 动态菜单创建IoC

    我想知道是否有人知道我如何创建如何使用 AutoFac 之类的东西来让我动态地允许 dll 创建自己的表单和菜单项以在运行时调用它们 所以如果我有一个 员工 dll 新入门表格 证书表格 供应商 dll 供应商详细信息来自 产品形态 在我的
  • C# 模式匹配

    我对 C 有点陌生 我正在寻找一个字符串匹配模式来执行以下操作 我有一个像这样的字符串 该书将在 唐宁街 11 号接待处 并将由主要医疗保健人员参加 我需要创建一个 span 标签来使用 startIndex 和 length 突出显示一些
  • 是否可以检测流是否已被客户端关闭?

    简要介绍一下情况 我有一项服务可以通过套接字接收信息并发送回复 连接不安全 我想设置另一个可以为这些连接提供 TLS 的服务 这个新服务将提供单个端口并根据提供的客户端证书分发连接 我不想使用 stunnel 有几个原因 其中之一是每个接收
  • 线程安全的有限大小队列,不使用锁

    我正在尝试编写一个主题队列 但遇到死锁和其他多线程问题 我想用Interlocked CompareExchange避免lock用法 但这段代码并没有按预期工作 它只是擦除整个队列 我在这里做错了什么 public class FixedS

随机推荐

  • 无法识别已安装的项目特定的 nuget 包

    我有一个 Web 项目 由于 nuget 错误而无法构建 我们有许多网站都使用名为 Sitecore 的网络 CMS 我们不同的网站在不同的版本下运行 因此 我们有一个针对多个版本的通用库如此处所述 https stackoverflow
  • 本地图像在 React-Native 应用程序发布版本中不可见

    在我的反应本机应用程序中我有 src http postimg org image ak6w7cbk3 文件夹 其中包括Images文件夹和屏幕文件夹 Myscreens文件夹有各种成分我在哪里使用本地图像Images使用以下代码
  • 如何使用表单身份验证将用户重定向到密码恢复页面

    我是 asp net 的初学者 我目前有一个登录页面 屏幕底部有一个忘记密码链接按钮 我还使用表单身份验证来防止未经授权的用户访问其他页面 除了一件事之外 身份验证似乎工作正常 一旦用户单击链接按钮 它就会阻止用户访问密码恢复页面 如何允许
  • 可变数量的参数而不装箱值类型?

    public void DoSomething params object args 上述签名的问题在于 传递给该方法的每个值类型都将被隐式装箱 这对我来说是严重的性能问题 有没有办法声明一个接受可变数量参数而不装箱值类型的方法 Thank
  • jQuery 中的输入与 :Input

    我想知道为什么人们似乎更喜欢 input over input作为 jQuery 选择器 基本上 这两行似乎做了同样的事情 input first focus input first focus 但第二个版本使用更广泛 我不明白为什么 此外
  • 第三方脚本可以设置第一方 cookie 吗?

    我在网上阅读了很多有关 cookie 的内容 但没有解决这个问题 假设我在 a com 上有一台服务器 而 b com 提供的网页在我的服务器上的该网页中嵌入了一个脚本 该脚本在设置 cookie 方面可以做什么 它可以设置一个cookie
  • 需要特殊数组(线性场)的算法

    我有一个数组 线性场 与预先排序的数字 1 2 3 4 5 6 但这些数组向右移动 k次 now its 5 6 1 2 3 4 k 2 但我不知道k 只有数组A 现在我需要一个算法来找到 A 中的最大值 运行时间 O logn 我认为它是
  • Vue.js 单向绑定表单

    我是 Vue js 的新手 我正在尝试测试这个框架的一些功能 现在我正在测试输入表单 我想进行单向绑定 而不使用v model指令 但我找不到任何示例 有人可以帮助我吗 这是单向和双向绑定的示例 var V new Vue el vue i
  • 如何创建弹出菜单

    我是 javafx 的新手 我想在单击鼠标右键时显示 弹出菜单 我找到一个教程Here http pixelduke wordpress com 2011 12 11 popupmenu in javafx and Here http la
  • 应用默认样式和 onClick 更改按钮的样式 -Angular 4

    我有一个按钮 我想应用按钮的默认样式 当用户单击按钮时 将按钮样式颜色更改为红色 将背景颜色更改为白色 Blow 是我的 css 和组件 btn default color white background color blue btn c
  • 如何检查字符串列表是否存在于两个单独的文件中

    我有两个文件 文件 A 是 IP 地址列表 同一行上有相应的 MAC 地址 文件 B 是仅包含 MAC 地址的列表 我需要比较这两个文件并列出文件 A 中没有在文件 B 中找到的 MAC 地址的行 FILE A 172 0 0 1 AA B
  • 如何让IE10的边框折叠起来?

    有没有人遇到过在 IE10 中无法工作的表格边框折叠的解决方案 我在需要的地方使用了网站上的表格 并且它们在所有其他浏览器中显示良好 但从 IE 10 开始 边框太厚了 上面的问题可能已经有几个月了 但今天我遇到了同样的问题 并且认为我至少
  • Shopify 购物车更改事件 - javascript

    当 Shopify 购物车发生更改时是否会触发一个事件 我可以每隔 x 秒刷新一次购物车 看看是否有什么变化 但基于事件的方法总是更好 虽然没有一站式 购物 呵呵 的方法 但这是可以做到的 在 Shopify 中 商品可以通过常规 HTML
  • 如何使用 Scikit-learn 查找簇质心 [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我有一个带有 标记 集群的数据集 我试图找到每个簇的质心 一个向量 其距离是簇的所有数据点中最小的 我找到了许多解决方案
  • React-native应用程序不会在后退按钮上关闭

    当按下后退按钮时 我的反应本机应用程序 在 Android 上 不会关闭 它关闭并进入后台并在那里运行 动画 我也尝试过这个 但得到了相同的结果 BackHandler addEventListener hardwareBackPress
  • 为多个应用程序创建安装程序

    嘿 我正在尝试从一台服务器计算机创建多个游戏的安装程序 然后由各个计算机执行 例如 BF 1942 WC3 BF2 DOW 但是 我需要能够选择要安装的应用程序 这是一个简单的复选框 我对 C 的了解有限 解决这个问题的最佳方法是什么 我看
  • Android NDK:如何在没有java的情况下重写NativeActivity中的onBackPressed?

    我的应用程序完全使用 C C 编写NativeActivity 它没有 Java 代码 基于 native activity NDK 示例 按 后退 按钮将其关闭 破坏活动 但我需要此按钮的其他行为 因为我有自己的 UI 和菜单 它们通过
  • PHP-按索引范围获取数组记录

    你好呀 是否有任何 PHP 本机函数可以根据索引的开始和结束返回数组中的记录范围 i e array 0 gt a 1 gt b 2 gt c 3 gt d 现在我只想返回索引 1 和 3 b c d 之间的记录 任何想法 你不能这样做吗
  • WPF Flowdocument paragraph.BringIntoView() 不适用于新文档

    我想加载大 rtf 文件并滚动到其中的特定段落 所以我做了这样的事情 private FlowDocument GenerateDocument string path var doc new FlowDocument using File
  • 如何在WPF中绘制可点击的矩形

    我是 WPF 应用程序的绝对初学者 需要一些帮助 我想做的就是从 A 点到 B 点画一个矩形 and能够检测何时单击矩形 因此 当单击它时 它会变成黄色 再次单击时 它会变成红色 有多种方法可以做到这一点 向矩形添加单击处理程序 并从后面的