【发布时间】:2023-03-20 07:20:01
【问题描述】:
我是 WPF 新手,对路由事件和依赖属性的包装语法感到困惑 我在许多来源中看到路由事件和依赖属性是这样包装的
// Routed Event
public event RoutedEventHandler Click
{
add
{
base.AddHandler(ButtonBase.ClickEvent, value);
}
remove
{
base.RemoveHandler(ButtonBase.ClickEvent, value);
}
}
// Dependency Property
public Thickness Margin
{
set { SetValue(MarginProperty, value); }
get { return (Thickness)GetValue(MarginProperty); }
}
我从未见过 C# 中的 add / remove / set / get 排序关键字。这些是作为关键字的 C# 语言的一部分吗?我从未体验过或使用过它们,因为我没有在 C# 中工作过,因为我是一名 C++ 程序员?如果不是关键字,那么如果它们不是 C# 的一部分,编译器将如何处理它们以及它们是如何工作的
【问题讨论】:
-
这是 C# 语言的基础知识,相信你必须通读 MSDN 关于 .NET 的属性和事件
-
同意@sil,这与(直接)WPF 无关。在查看 Routed/Dependency 变体之前,您应该了解“正常”属性和事件。
标签: c# wpf syntax dependency-properties routed-events