Like the Exception message suggests, you are trying to perform an invalid casting.
In my opinion, in database, the status should save the boolean values which can be formatted as "Yes" or "No" according to the needs.
If you want to keep everything else as is, you have to check the value of
cancelled
and assign the respective boolean value to
ch1.Checked
. Something like this:
ch1.Checked = dr!cancelled == "Yes";
This is just an example. You can use Methods from the System.String to compare the values and obviously, make the string to either Upper or to Lower case and then perform the comparison.