ReadonlyCollection, sind die Objekte unveränderlich?

Ich versuche ReadOnlyCollection zu verwenden, um das Objekt unveränderlich zu machen. Ich möchte, dass die Eigenschaften des Objekts unveränderlich sind.

public ReadOnlyCollection<FooObject> MyReadOnlyList
{
    get
    {
        return new ReadOnlyCollection<FooObject>(_myDataList);
    }
}

Aber ich bin ein bisschen verwirrt.

Ich habe versucht, die Eigenschaft des Objekts mit foreach in MyReadOnlyList zu ändern, und ... Ich kann die Werteigenschaft ändern, ist das richtig? Ich habe verstanden, dass ReadOnlyCollection eine Add-Ebene festgelegt hat, um das Objekt unveränderlich zu machen.