テキストが時々変更されるテキストブロックを持つカスタムユーザーコントロールがあります。TextBlocks コードは
XAML:
<TextBlock Text="{Binding ElementName=dashboardcounter, Path=Counter}" FontFamily="{Binding ElementName=dashboardcounter, Path=FontFamily}" HorizontalAlignment="Left" Margin="17,5,0,0" VerticalAlignment="Top" FontSize="32" Foreground="#FF5C636C"/>
.cs:
private static readonly DependencyProperty CounterProperty = DependencyProperty.Register("Counter", typeof(string), typeof(DashboardCounter));
public string Counter
{
get { return (string)GetValue(CounterProperty); }
set { SetValue(CounterProperty, value); }
}
私のクラス:
private string _errorsCount;
public string ErrorsCount
{
get { return _errorsCount; }
set { _errorsCount = value; NotifyPropertyChanged("ErrorsCount"); }
}
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String propertyName)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (null != handler)
{
handler(this, new PropertyChangedEventArgs(propertyName));
}
}
上記のユーザーコントロールのバインディング:
dashboardCounter.Counter = view.ErrorsCount;
TextBlock が表示されます-絶対に何もありません。
私は何を間違っていますか?文字列は動的で、時々変化します。もともとは Int でしたが、代わりに文字列にすることを選択し、IValueConverter を作成する代わりに「Count」を String() に変換しました