Propriedades de Dependência de ReadOnly do WPF usando MVVM
Eu recentemente substitui a grade DevXpress WPF para me dar uma propriedade SelectedObject que eu possa acessar do meu ViewModel vagamente ligado.
Eu fiz uma propriedade de dependência SelectedObject e tê-lo ligado OneWayToSource no meu XAML.
Tudo funciona bem, mas se eu tentar fazê-lo ReadOnly (para completar) eu recebo um erro de compilação e diz que não posso vincular a uma propriedade ReadOnly. O código abaixo compila, eu incluí (mas removi) os bits que eu tenho tentado em minhas tentativas de obter a propriedade ReadOnly.
Alguém pode ajudar por favor?
A propriedade de dependência do meu controle substituído parece:
//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();
}
}
O 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>