C# 如何观察标签内容?

C# 如何观察标签内容?,c#,wpf,binding,label,contentobserver,C#,Wpf,Binding,Label,Contentobserver,我的时间输入窗口中有3个字段: 开始时间 结束时间 双倍时长 所有控件都绑定到一个对象 我已经在模型类中实现了System.ComponentModel.InotifyProperty更改, 我已经用开始或结束时间的更改更新了标签中的内容,但是 我必须观察块修改的变化,这将导致长度小于0 我应该如何做到这一点?您可以在模型类中实现此逻辑 public class MyModel : INotifyPropertyChanged { ... public DateTime StartT

我的时间输入窗口中有3个字段:

开始时间 结束时间 双倍时长 所有控件都绑定到一个对象

我已经在模型类中实现了System.ComponentModel.InotifyProperty更改, 我已经用开始或结束时间的更改更新了标签中的内容,但是

我必须观察块修改的变化,这将导致长度小于0


我应该如何做到这一点?

您可以在模型类中实现此逻辑

public class MyModel : INotifyPropertyChanged
{
  ...
    public DateTime StartTime
    {
        get { return _startTime; }
        set 
        {
             if ((EndTime - value).TotalMinutes >= 0) // only allow changes if it doesn't result in < 0 timespan.
             {
                 _startTime = value;
                 OnPropertyChanged("StartTime", "Length");
             }
        }
    }

    public DateTime EndTime
    {
        get { return _endTime; }
        set 
        {
             if ((value - StartTime).TotalMinutes >= 0) 
             {
                 _endTime = value;
                 OnPropertyChanged("EndTime", "Length");
             }
        }
    }

    public double Length
    {
         get { return (EndTime - StartTime).TotalMinutes / 60.0; }           
    }
  ...
}

只是想确定一下。当标签中的文本更改时,是否要执行某些方法?