c# - WPF Canvas VisibilityChanged 事件

标签 c# wpf events canvas event-handling

我想设置一个事件,以便在 WPF Canvas 控件上更改 Visibility 时运行。

canvas1.VisibleChanged += new EventHandler(canvas1_VisibleChanged);

我已经尝试了上面的但是它不起作用,有人知道怎么做吗?

最佳答案

您正在寻找适用于所有 UIElement 的 IsVisibleChanged 事件:

UIElement.IsVisibleChanged


更多信息:IsVisible 是只读依赖属性。它是一个计算值,Visibility 依赖属性会影响它。这是您应该用来检测您的 UIElement 是否可见的方法。

现在,如果您真的真的只想检查 Visibility DP 因任何原因而改变,有一种方法可以这样做:http://agsmith.wordpress.com/2008/04/07/propertydescriptor-addvaluechanged-alternative/

不过,我仍然坚持只跟踪 IsVisibleChanged

关于c# - WPF Canvas VisibilityChanged 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6634976/

相关文章:

c# - 实现 IEnlistmentNotification 时我应该在哪里执行操作?

c# - 滚动到虚拟化 ItemsControl 的元素

c# - 带有三角形拇指的自定义 WPF slider

c# - 事件未触发 SharePoint DataGrid 中的动态列

javascript - JavaScript 中的事件检查

c# - 在 C# 中运行 Linux 控制台命令

c# - OpenRasta 通过 JsonDataContractCodec 返回列表

c# - 为什么在 C# 中不能共存相同类型的隐式和显式运算符?

wpf - 结合 MVVM Light Toolkit 和 Unity 2.0

events - 处理树面板 Extjs 4 上的 itemclick 事件