This question of these interviewers is so idiotic that it makes it tricky :-)
(Gosh, why so many interview questions are idiotic? Isn't that because people think that nobody records them? Some do. My respect.)
Now, the property is not a field. So what do they mean by "not change" need some definition; and this is the trick. The value of the property appears on the fly, when the property getter is called. It can involve some calculation, and, in particular, it could be just reading of some
backing field (please see
http://en.wikipedia.org/wiki/Property_%28programming%29[
^]).
Now, the backing field is almost always modified during run time at least once when it is initialized. Does it mean that the property is modified? Yes and no.
If you formulate the question like that: "is it possible to read the property value twice and get different results?" that would be a certain meaning attributed to the question.
[EDIT]
Just in case, I also want to bust the myth that some properties are changed only during design time. In the application life cycle, there is no "design time", this is a part of Visual Studio process life time. If you look at the code auto-generated by the Designer, you will see all your assignments hard-coded in it. And this code is called during run-time, in a constructor. So
everything assigned using the Designer will actually be assigned during run time.
(All solutions prior to this one are wrong, by the reasons I hopefully explained below.)
[END EDIT]
I call such question empty-minded. Answering them by pointing to some members is a very bad criterion for hiring a developer. I would rather hired the one why denied to answer the question, especially this denial is motivated. After I asked this person
my questions, of course. :-)
—SA