I'm not very experienced on this but if I need to do something like that, I would create a new field on the database on the Ticket Table called EditingBy and add a default value of '0'.
when a user calls the TicketID = 897 the query should be like:
SELECT * FROM Tickets WHERE TicketID = 897;
UPDATE Tickets SET EditingBy = @UserID WHERE TicketID = 897;
then in the code, you see if the EditingBy is greater than 0 you can warn UserB that UserA (you know the UserID) is editing the ticket, like SO does when someone post an answer and you are writing yours, or when you get a new badge for example.
when commit the ticket for update you can then update the field back to 0.
and be advise that the user can enter the SomePage.aspx and leave without doing anything, for that a javascript onUnload in the body tag that would trigger an Asynchronous call to update the EdittingBy back to 0 would be an idea.
hop that this gives you an idea about doing it.
Edited:
you can always record the EditingBy in a XML file if you can't edit the Database itself, just keep TicketID and UserID, and instead of finding if it is greater than 0, just check if the TicketID is in the XML.