Я пытаюсь построить DataGrid и хочу привязать одно из свойств Foreground TextColums к Date, чтобы оно стало красным, если Date уже в прошлом.
Здесь XAML:
<toolkit:DataGridTextColumn
Binding="{Binding Path=Prüfdatum, Converter={StaticResource TimestampToDateConverter}}"
Header="Prüfdatum"
Foreground="{Binding Path=Prüfdatum, Converter={StaticResource TimestampToColorConverter},
ConverterParameter=Prüfdatum}" />
Вот мой конвертер:
class TimestampToColorConverter: IValueConverter
{
#region IValueConverter Member
public object Convert(object value, Type targetType,
object parameter, System.Globalization.CultureInfo culture)
{
string Datum = value.ToString();
int year = System.Convert.ToInt32(Datum.Substring(6, 4));
int month = System.Convert.ToInt32(Datum.Substring(3, 2));
int day = System.Convert.ToInt32(Datum.Substring(0, 2));
int hour = System.Convert.ToInt32(Datum.Substring(11, 2));
int minute = System.Convert.ToInt32(Datum.Substring(14, 2));
int second = System.Convert.ToInt32(Datum.Substring(17, 2));
DateTime Time = new DateTime(year, month, day, hour, minute, second);
if (Time < System.DateTime.Now)
{
return Brushes.Red as Brush;
}
else
{
return Brushes.Black as Brush;
}
}
public object ConvertBack(object value, Type targetType,
object parameter, System.Globalization.CultureInfo culture)
{
return null;
}
#endregion
}
Я не знаю, что не так, но конвертер даже не вызывается (первый конвертер работает отлично). Окно вывода показывает это:
System.Windows.Data Ошибка: 2: не удается найти управляющий FrameworkElement
или FrameworkContentElement для
целевой элемент
BindingExpression: Path = Prüfdatum;
DataItem = NULL; целевой элемент
'DataGridTextColumn'
(HashCode = 16187528); целевое свойство
это «Передний план» (тип «Кисть»)
Надеюсь, вы мне поможете, ребята
Thx