Jassim,
You are asking the wrong question. You have found the way to make it
read only, you just don't like the color.
What you should have asked is how can you make it read only without
disabling it? Personally, I think that you should allow the textbox to be
greyed out, since I would think a user would want some visual indication
that they can't access the checkbox.
In order to make it so that it is not disabled, you could look into just
not accepting a click, by handling the BM_SETCHECK message so that it does
nothing.
Your other option would be to disable the control, and custom paint it
in the disabled state, so that it appears enabled.