Entweder machst dus im XML
dh du gehst in dein UControl und schreibst oben in die UControl definition hier->
<UserControl ReadOnly={Binding ReadOnly} >...</UserControl>
Wenn du ein ViewModel hast kannst du über den Ancestor auf das Usercontrol binden
Hier bin ich mir nicht sicher ob da ein namenskonflikt bei gleicher benennung entsteht zwischen dem MISL code und deinem c# Code
<UserControl
ReadOnly="{RelativeSource AncestorType={x:Type UserControl} Path=ReadOnly}">...</UserControl>
Oder du machst es im code
public Boolean ReadOnly
{
get { return (Boolean)GetValue(ReadOnlyProperty); }
set { SetValue(ReadOnlyProperty, value); }
}
public static readonly DependencyProperty ReadOnlyProperty =
DependencyProperty.Register("ReadOnly", typeof(Boolean), typeof(MyUserControl), new PropertyMetadata(default(Boolean), OnReadOnlyChanged));
private static void OnReadOnlyChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
{
((MyUserControl)o).OnReadOnlyChanged((Boolean)e.OldValue, (Boolean)e.NewValue);
}
private void OnReadOnlyChanged(Boolean oldValue, Boolean newValue)
{
this.Readonly = newValue;
}