Silverlight DataGrid устанавливает ячейку IsReadOnly программно - PullRequest
1 голос
/ 30 марта 2010

Я привязываю сетку данных к коллекции объектов Task. Для определенного столбца требуются специальные правила, относящиеся к редактированию:

<!--Percent Complete-->
<data:DataGridTextColumn Header="%" 
                         ElementStyle="{StaticResource RightAlignStyle}" 
                         Binding="{Binding PercentComplete, Mode=TwoWay, Converter={StaticResource PercentConverter}}" />

То, что я хочу сделать, - это установить свойство IsReadOnly только для процента заполнения каждой ячейки задачи на основе свойства фактического объекта задачи. Я пробовал это:

<!--Percent Complete-->
<data:DataGridTextColumn Header="%" 
                         ElementStyle="{StaticResource RightAlignStyle}" 
                         Binding="{Binding PercentComplete, Mode=TwoWay, Converter={StaticResource PercentConverter}}"
                         IsReadOnly={Binding IsNotLocalID} />

но, очевидно, вы не можете привязать свойство IsReadOnly в столбце сетки данных. Как лучше всего делать то, что я пытаюсь сделать?

Ответы [ 2 ]

1 голос
/ 01 апреля 2010

Я не думаю, что вы можете связать непосредственно с этим. Я нашел этот расширенный DataGrid для Silverlight, который, однако, сделает свое дело.

Расширенная сетка данных

0 голосов
/ 01 апреля 2010

Это выглядит как DataGridColumn.IsReadOnly Свойство является DependencyProperty , поэтому оно должно быть привязываемым. Измените свой XAML на IsReadOnly="{Binding IsNotLocalID}" (обратите внимание на добавленные кавычки) и посмотрите, что произойдет. Получаете ли вы какие-либо ошибки привязки в окне вывода Visual Studio?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...