나는 사용자 정의 컨트롤이 있습니다. 내 사용자 정의 컨트롤에 바인딩 가능한 속성을 만들고 싶습니다. 다음과 같이 내가하는 DependencyProperty를 만들 :WPF에서 바인딩 가능한 속성을 만드는 방법은 무엇입니까?
public static readonly DependencyProperty DateProperty =
DependencyProperty.Register("Date", typeof(DateTime), typeof(DaiesContainer),
new UIPropertyMetadata(DateTime.Now));
public DateTime Date
{
get { return (DateTime)GetValue(DateProperty); }
set
{
SetValue(DateProperty, value);
}
}
그때 나는 내 XAML에서 사용 :
<ctrls:DaiesContainer Date="{Binding Date, Mode=OneWay}"/>
을 내 뷰 모델에서 날짜 속성의 get 메소드가 호출됩니다. 하지만 내 사용자 정의 컨트롤에서 날짜 속성은 값으로 설정되어 있지 않습니다.
는 HTTP (A [호환 패턴]에 XAML에서'DateTime'를 삽입 : //msdn.microsoft.com/en-us/library/dd631811.aspx)? –
속성이 설정되지 않았다는 것을 어떻게 알 수 있습니까? 종속성 속성의 메타 데이터로 [PropertyChangedCallback] (http://msdn.microsoft.com/en-us/library/system.windows.propertychangedcallback.aspx)을 등록하지 않았습니다. [여기] (http://msdn.microsoft.com/en-us/library/bb613563.aspx)에 설명 된대로 속성이 XAML에 설정되어 있으면 CLR 래퍼의 설정자가 호출되지 않습니다. – Clemens
@Clemens 고맙습니다.하지만 정적이 아닌 메서드를 호출해야합니다. –