Try changing your property base fields to private:
public bool isDirty;
public string title;
Becomes
private bool isDirty;
private string title;
If this throws up any compilation errors, that is your problem.
It is never a good idea to make the property base field for a property public - it defeats the purpose of having a property in the first place.