帮助将 NotifyOnChange 属性转换为依赖项属性

发布于 2024-12-06 04:17:06 字数 279 浏览 1 评论 0原文

将下面的虚构代码转换为依赖属性的最佳方法是什么? 日期属性将在另一个控件中的什么位置?

    [DependsOn("Date")]
    public int Year
    {
        get { return Date.Year; }
        set { Date.Year = value; }
    }

    [NotifyOnChange]
    public DateTime Date
    {
        get; set; 
    }

What is the best way of converting the fictional code below to dependency properties?
Where the Date Property will be in another control?

    [DependsOn("Date")]
    public int Year
    {
        get { return Date.Year; }
        set { Date.Year = value; }
    }

    [NotifyOnChange]
    public DateTime Date
    {
        get; set; 
    }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

会发光的星星闪亮亮i 2024-12-13 04:17:06

依赖属性可以通过 BindingStyleTriggerTemplate 相互依赖 > 等。在某些情况下,它们继承诸如 DataContext。在其他情况下,它们会复制所有者的值,例如 Border 的背景颜色

在您的情况下,您是否想要创建两个依赖属性,默认情况下它们在声明级别本身(即在代码隐藏中)相互依赖?

如果是这样,您的 Date 可以是一个 Dep.Prop,例如 DateProperty。和 Year 也可以是 YearProperty。在 DatePropertyYearPropertyPropertyChangedCallBack 元数据中,相互更改,注意不要陷入死锁

Dependency properties can be dependent on one another via Binding, Style, Trigger, Template etc. In certain cases they inherit values like DataContext. In other cases they copy the values of the owner like Border's background color.

In your case do you want to create two dependency properties which by default depend on each other at declaration level itself i.e. in code behind?

If so, your Date can be one Dep.Prop say DateProperty. and Year can be other say YearProperty. In DateProperty and YearProperty's PropertyChangedCallBack metadata, change each other taking care that they do not fall in deadlock.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文