Я пишу свое самое первое приложение Silverlight. У меня есть таблица данных со столбцом, который имеет две метки, для меток, я использую IValueConverter для условного форматирования данных.
«Содержимое» ярлыка установлено так:
Content="{Binding HomeScore, Converter={StaticResource fmtshs}}"
и
Content="{Binding AwayScore, Converter={StaticResource fmtshs}}"
Метод Convert моего IValueConverter таков:
Public Function Convert(
ByVal value As Object,
ByVal targetType As System.Type,
ByVal parameter As Object,
ByVal culture As System.Globalization.CultureInfo) As Object
Implements System.Windows.Data.IValueConverter.Convert
Dim score As Long = value, other As Long = parameter
Return If(score < 0, "",
If(score - other > 5, (other + 5).ToString, score.ToString)
)
End Function
Так что я хочу сделать в конвертере для HomeScore, я хочу передать AwayScore в ConverterParameter, а для AwayScore я хочу передать HomeScore в конвертер. В конвертере для любой оценки мне нужно знать значение другой оценки для форматирования.
Но я не могу понять синтаксис для привязки ConverterParameter к другому полю.
Я пробовал следующее:
Content="{Binding HomeScore, Converter={StaticResource fmtshs}, ConverterParameter=AwayScore}"
Content="{Binding HomeScore, Converter={StaticResource fmtshs}, ConverterParameter={AwayScore}}"
Content="{Binding HomeScore, Converter={StaticResource fmtshs}, ConverterParameter={Binding AwayScore}}"
Но ни один из них, похоже, не работает. Как передать значение поля в ConverterParameter?