Проблема привязки данных WPF - PullRequest
1 голос
/ 05 марта 2011

Я использую RadGridView (Telerik). Я пытаюсь сделать столбец редактируемым только для определенных строк, но то, что я пытаюсь сделать, похоже, не работает, и я не уверен, как это сделать.

Моя сетка такая:

<telerik:RadGridView HorizontalAlignment="Left" Margin="12,12,12,12" Name="radGridView1" VerticalAlignment="Top" ItemsSource="{Binding FeedList}" ShowGroupPanel="False" AutoGenerateColumns="False" ShowInsertRow="True" EditTriggers="Default">
    <telerik:RadGridView.Columns>
        <telerik:GridViewDataColumn Header="Feed" DataMemberBinding="{Binding Path=Name}" Width="150" IsReadOnly="{Binding Path=ReadOnly}" />
        <telerik:GridViewDataColumn Header="Url" DataMemberBinding="{Binding Path=Url}" Width="*"/>
    </telerik:RadGridView.Columns>
</telerik:RadGridView>

Связанный объект имеет свойство, но путь для привязки IsReadOnly относится к DataContext для формы, а не к связанному объекту. Как бы я сделал это относительно связанного объекта в этом случае?

Ответы [ 2 ]

0 голосов
/ 04 октября 2012

В случае, если кто-то сталкивается с этим в поиске.Ответ заключается в том, что текст данных GridView привязан к отображаемой коллекции и не имеет доступа к тексту данных Window или UserControl.

У Томаса Левеска есть запись в блоге на эту тему.Он собирает класс BindingProxy, который можно использовать для передачи текстового контекста в обзор радара.

http://www.thomaslevesque.com/2011/03/21/wpf-how-to-bind-to-data-when-the-datacontext-is-not-inherited/

0 голосов
/ 05 марта 2011

Intellisense должен быть испорчен.Каким-то образом пропущено свойство IsReadOnlyBinding GridViewDataColumn, которое делает именно то, что я хочу.Не уверен, почему IsReadOnly не смог этого сделать.

...