@@ -353,7 +353,9 @@ private static void GenerateBindableProperties(
353353 string getterValue = getterEnum != null ? GetAccessibilityName ( ( int ) getterEnum ) : "Public" ;
354354 string setterValue = setterEnum != null ? GetAccessibilityName ( ( int ) setterEnum ) : "Public" ;
355355
356- string propertyAccessRaw = GetWidestAccessibility ( getterValue , setterValue ) ;
356+ // For readonly properties, use getter accessibility as property accessibility
357+ // For read-write properties, use the widest accessibility
358+ string propertyAccessRaw = readOnly ? getterValue : GetWidestAccessibility ( getterValue , setterValue ) ;
357359 string propertyAccessibilityStr = ToPropertyAccessibilityString ( propertyAccessRaw ) ;
358360
359361 var lockerArg = threadSafe ? "_Locker" : "null" ;
@@ -516,7 +518,9 @@ private static void GenerateRegularProperties(
516518 string getterValue = getterEnum != null ? GetAccessibilityName ( ( int ) getterEnum ) : "Public" ;
517519 string setterValue = setterEnum != null ? GetAccessibilityName ( ( int ) setterEnum ) : "Public" ;
518520
519- string propertyAccessRaw = GetWidestAccessibility ( getterValue , setterValue ) ;
521+ // For readonly properties, use getter accessibility as property accessibility
522+ // For read-write properties, use the widest accessibility
523+ string propertyAccessRaw = readOnly ? getterValue : GetWidestAccessibility ( getterValue , setterValue ) ;
520524 string propertyAccessibilityStr = ToPropertyAccessibilityString ( propertyAccessRaw ) ;
521525
522526 var lockerArg = threadSafe ? "_Locker" : "null" ;
0 commit comments