Свойство MaxWidth столбца двойной привязки - PullRequest
0 голосов
/ 13 сентября 2011

У меня есть сетка данных, столбцы которой я хотел бы установить для свойства MaxWidth сквозной привязки.У меня есть конвертер, чтобы изменить «связывание» на «двойной», но конвертер никогда не срабатывает, приложение останавливается на ошибке xaml: «System.Windows.Data.Binding» не может быть преобразован в тип «System.Double».Когда я использую конвертер для других свойств за пределами свойства MaxWidth datagrid, он работает нормально.Почему это не работает?

<Grid.Resources>
    <Converter:DoubleConverter x:Key="ConverterForDoubles" />
</Grid.Resources>

<data:DataGridTextColumn Header="Task ID" Binding="{Binding TaskId}" 
MaxWidth="{Binding Source={StaticResource MainViewModel}, Path=TaskIdColumnMaxWidth,
Mode=TwoWay, Converter={StaticResource ConverterForDoubles}}" />

Ответы [ 2 ]

0 голосов
/ 28 сентября 2011

Нашел это, чтобы помочь с привязкой к сеттерам: Настройка значения Binding Helper

0 голосов
/ 13 сентября 2011

DataGridTextColumn.MaxWidth не является свойством зависимости, поэтому его нельзя привязать.

Он просто жалуется на наличие "{Binding...}", когда он ожидал, что двойное значение будет проанализировано из XAML.

Решения включают добавление вложенных свойств или создание подкласса DataGridTextColumn и добавление свойства Dependency, которое устанавливает MaxWidth при его установке.

...