As the code is using custom classes, it's hard for anyone else to guess what's wrong.
All I can deduce is that 'status' must still be true for 'Record Updated Successfully' to be displayed in the label.
If this is unexpected behaviour, then it may be something to do with the way you're obtaining 'status':
bool status = (new CountryBAL().UpdateCountry(objCountry));
where I see that you're creating a new CountryBAL instance each time rather than reusing an existing instance.
In fact, you're creating an instance of this class, objCountryBal, earlier in the method but you never use it.
objCountry will also be a different object each time the button is clicked, even if it has the same CountryName property. This may, or may not, be significant depending on how the UpdateCountry method works internally.