나는이 문제에 대한 답을 알기 위해 'duh'라고 말할 것임을 확신하지만, 현재 마음에 들지는 않지만, 일부 논리에 속성을 바인딩하는 중
다음과 같은 클래스를 가정 ... 나를 돕기 위해 여기에 비동기 도움 스레드를 회전 M :public class DerivedTicket: Ticket
{
public ObservableCollection<TicketDetail> TicketDetails { get; set; }
}
public class Ticket
{
public static readonly DependencyProperty SubTotalProperty = DependencyProperty.Register("SubTotal", typeof(decimal), typeof(TicketsRow));
public static readonly DependencyProperty TaxProperty = DependencyProperty.Register("Tax", typeof(decimal), typeof(TicketsRow));
public static readonly DependencyProperty TotalProperty = DependencyProperty.Register("Total", typeof(decimal), typeof(TicketsRow));
public decimal SubTotal
{
get { return (decimal)this.GetValue(SubTotalProperty); }
set { this.SetValue(SubTotalProperty, value); }
}
public decimal Tax
{
get { return (decimal)this.GetValue(TaxProperty); }
set { this.SetValue(TaxProperty, value); }
}
public decimal Total
{
get { return (decimal)this.GetValue(TotalProperty); }
set { this.SetValue(TotalProperty, value); }
}
}
public class TicketDetail
{
public static readonly DependencyProperty ItemIdProperty = DependencyProperty.Register("ItemId", typeof(int?), typeof(TicketDetailsRow));
public static readonly DependencyProperty PriceProperty = DependencyProperty.Register("Price", typeof(decimal), typeof(TicketDetailsRow));
public static readonly DependencyProperty TaxProperty = DependencyProperty.Register("Tax", typeof(decimal?), typeof(TicketDetailsRow));
public static readonly DependencyProperty DescriptionProperty = DependencyProperty.Register("Description", typeof(string), typeof(TicketDetailsRow));
public int? ItemId
{
get { return (int?)this.GetValue(ItemIdProperty); }
set { this.SetValue(ItemIdProperty, value); }
}
[Field]
public decimal Price
{
get { return (decimal)this.GetValue(PriceProperty); }
set { this.SetValue(PriceProperty, value); }
}
[Field]
public decimal? Tax
{
get { return (decimal?)this.GetValue(TaxProperty); }
set { this.SetValue(TaxProperty, value); }
}
[Field]
public string Description
{
get { return (string)this.GetValue(DescriptionProperty); }
set { this.SetValue(DescriptionProperty, value); }
}
}
어떻게 당신이 TicketDetails
의 합과 동기화에 SubTotal
을 유지 가겠어요
INotifyPropertyChanged
또는 다른 방법으로 도움을 받으시겠습니까?
TicketDetails가 Ticket의 속성으로 존재하지 않는 이유는 무엇입니까? 그렇게하면 Ticket과 상호 작용하고이를 사용하여 다양한 값의 변경 사항을 관리 할 수 있습니다. 티켓 컬렉션을 유지하는 것이 더 합리적인 것처럼 보입니다. 문제의 더 많은 부분을 보지 않고도 모델링 할 수있는 Ticket과 TicketDetails 사이의 "속한"관계가있는 것 같습니다. – dash
@dash Henk의 대답에 대한 의견보기. 또한, 그렇게 쉽게 해결할 수 있다고 생각되면 제안 된 디자인을 토대로 제 질문에 대답 해주십시오. –