I am using an Item Updating event receiver (in 2010). After Properties, where the changed values are stored. Refer to this excellent blog post from Randy Williams for a complete overview of which property to use with each event : Working with Before Properties and After Properties on SPItem Event Receiver Side note #1: You should never open a new SPWeb inside a synchronous event receiver, as this is potentially a very costly operation.
Are you able to debug your Event Receiver when you modify an item in the list? It appears no matter what you do to the after properties it doesn't change anything It is nice to update Title in Item Adding and Item Updating events since extra Updates are avoided (without Disable Event Firing), and the "Edit Properties view" will already have the Title filled in Some code example to update title based on filename. For working with Title in Lists, ["Title"] needs to be used.
I have a Doc Lib where I have some Metadata fields.
There is one field called “My Choice” which is a Choice type field with 3 values – “Choice1”, “Choice2” and “Choice3”. Now there is another field called “My Value” of Text Type.
Users can change data like the number of moons or the distance to the earth, but they are not able to change the name of the planet.
To prevent users from changing the name of the planet, you can develop a Item Updating event receiver.