в лучшем мире может быть
я есть ValueConverter, который должен быть вызван с динамическим параметром, в зависимости от свойства. Я не вижу способа сделать это ...
Width="{Binding ActualWidthValue, Source={StaticResource VisibleSize}, Converter={StaticResource Fraction}}"
Преобразователь «Дробь» получает (или должен получать) параметр типа System.Size, который содержит числитель и денумератор. Это значение (должно) зависит от ItemCollection.Count. Сброс ItemCollection должен повторно вызвать конвертер с новыми значениями.
Моей первой идеей было вручную изменить ConverterParameter в CodeBehind для события PropertyChanged моего ItemCollection DependencyProperty. Но, как я теперь знаю, в Silverlight нет метода GetBinding (). Я слышал о GetBindingExpression и пытался сделать. Но MyGrid.GetBindingExpression (Grid.ActualHeightProperty) всегда возвращает ноль, хотя привязка уже установлена.
Итак, что я могу сделать, чтобы достичь своей цели?
Моя реализация не сильно отличалась. Я устанавливаю ConverterParameter в CodeBehind непосредственно перед тем, как конвертер вызывается через Binding. Это не сработало (параметр по-прежнему содержит значение инициализации).
Я постараюсь использовать ваше предложение. Но почему ConverterParameter не может быть DependencyPropery. Что за идея стоит за этим? Кто-нибудь знает?