Недавно я переопределил сетку DevXpress WPF, чтобы получить свойство SelectedObject, к которому я могу получить доступ из свободно связанной модели ViewModel.
Я создал свойство зависимостей SelectedObject и привязал его к OneWayToSource в своем XAML.
Все работает нормально, но если я пытаюсь сделать его ReadOnly (для полноты), я получаю ошибку компиляции и говорит, что не могу привязать свойство ReadOnly. Приведенный ниже код компилируется, я включил (но rem'd) биты, которые я пытался получить, пытаясь получить свойство ReadOnly.
Может кто-нибудь помочь, пожалуйста?
Свойство зависимости моего переопределенного элемента управления выглядит следующим образом:
//public static readonly DependencyPropertyKey SelectedRowKey = DependencyProperty.RegisterReadOnly("SelectedObject", typeof(object), typeof(MyGrid), new PropertyMetadata(null));
//public static readonly DependencyProperty SelectedObjectProperty = SelectedRowKey.DependencyProperty;
public readonly static DependencyProperty SelectedObjectProperty = DependencyProperty.Register("SelectedObject", typeof(object), typeof(MyGrid), new PropertyMetadata(null));
public object SelectedObject
{
get
{
return GetValue(SelectedObjectProperty);
}
set
{
throw new NotImplementedException();
}
}
XAML:
<StackPanel>
<devxgrid:MyGrid AutoPopulateColumns="True" DataSource="{Binding Animals}" SelectedObject="{Binding MyObject, Mode=OneWayToSource}" Width="300" Height="300">
<devxgrid:MyGrid.View>
<MyGrid:TableView AllowEditing="False" Name="GridView" AutoWidth="True" />
</devxgrid:MyGrid.View>
</devxgrid:MyGrid>
</StackPanel>