プロパティ '<propertyname>' の 'Get' アクセサにアクセスできません。

更新 : 2007 年 11 月

ステートメントがプロパティの値を取得しようとしましたが、プロパティの Get プロシージャへのアクセス許可がありません。

Get ステートメントProperty ステートメントよりも制限の高いアクセス レベルでマーク付けされている場合、プロパティ値の読み取りは次のケースでエラーになります。

  • Get ステートメントが Private (Visual Basic) でマーク付けされており、呼び出し元のコードがプロパティが定義されたクラスまたは構造体の外側にある場合。

  • Get ステートメントが Protected (Visual Basic) でマーク付けされており、呼び出し元のコードがプロパティが定義されたクラスまたは構造体の内部にも、派生クラスの内部にもない場合。

  • Get ステートメントが Friend (Visual Basic) でマーク付けされており、呼び出し元のコードがプロパティが定義されたのと同じアセンブリにない場合。

Error ID: BC31103

このエラーを解決するには

  • プロパティが定義されたソース コードを変更できる場合は、Get プロシージャをプロパティ自体と同じアクセス レベルで宣言することを検討してください。

  • プロパティが定義されたソース コードを変更できない場合、または Get プロシージャをプロパティ自体よりも厳しいアクセス レベルで制限する必要がある場合は、プロパティ値を読み取るステートメントをプロパティへのアクセスが可能なコード領域に移動することを検討してください。

参照

処理手順

方法 : 複数のアクセス レベルを持つプロパティを宣言する

概念

Property プロシージャ