2016-06-10 1 views
-1

В form1 я загружаю datagridview с данными из моей базы данных. Когда я дважды нажимаю на строку datagridview, он запускает form2, и он будет заполнен информацией этой строки. Я могу заполнить textboxes и comboboxesform2, но моя проблема возникает здесь, в базе данных у меня есть столбец, для которого требуется ответ «да» или «нет», это означает, что это строка, и в соответствии с этим ответом я хочу чтобы проверить один из двух radiobuttons из form2, когда я пытаюсь использовать, если заявление, как это:Если оператор switch с строкой и bool C#

if (datacontext.married = "yes") 
{ 
radiobutton1.checked 
} 
else 
{ 
radiobutton2.checked 
} 

Это дает мне ошибку, говоря, что я не могу преобразовать ..... BOOL в строку или наоборот, и я тоже попробовал с помощью оператора switch.

Я все еще новичок в C#, и если я использую что-то не так, я был бы рад услышать ваши предложения. Что мне делать?

ответ

0

Вы не сравниваете значения, нужно использовать ==

if (datacontext.married == "yes") 
{ 
radiobutton1.checked 
} 
else 
{ 
radiobutton2.checked 
} 
0

Изменить его:

if (datacontext.married == "yes") // Note double == 
{ 
    radiobutton1.checked = true; // Or what you want to do. 
} 
else 
{ 
    radiobutton2.checked = true 
} 

One = является назначение. Double == сравнение.

См. docs для получения дополнительной информации.

Для предопределенных типов значений, оператор равенства (==) возвращает истину, если значения операндов равны, иначе ложь. Для ссылочных типов, отличных от строки, == возвращает true, если два операнда относятся к тому же объекту. Для типа string == сравнивает значения строк .

Смежные вопросы