これが私のコードです。性別の値を格納する方法がわかりませんtextbox.text
string gender;
if (radio_male.Checked)
{
gender = "Male";
}
if (radio_female.Checked)
{
gender = "Female";
}
txtfirstname.Text = gender;
これが私のコードです。性別の値を格納する方法がわかりませんtextbox.text
string gender;
if (radio_male.Checked)
{
gender = "Male";
}
if (radio_female.Checked)
{
gender = "Female";
}
txtfirstname.Text = gender;
gender
初期化されていません。演算子を使用?:
してコードを削減できます。
string gender = radio_female.Checked ? "Female" : (radio_male.Checked ? "Male" : string.Empty);
txtfirstname.Text = gender;
初期化されている可能性のあるコンパイラ エラーが発生すると思いますgender
。空の文字列をデフォルトとして設定することで解決できます。
string gender;
if (radio_male.Checked)
{
gender = "Male";
}
else if (radio_female.Checked)
{
gender = "Female";
}
else
{
gender = ""; // or gender = string.Empty;
}
txtfirstname.Text = gender;
txtfirstname
正しく入力しています。(事実は別として、むしろそうtxtGender
あるべきではないでしょうか?)
実際の問題は異なります。値を割り当てずにローカル変数を使用することはできません。C# コンパイラでは、実行時に奇妙なエラーが発生するのを防ぐために (たとえば、私の知る限り C とは異なり)、これを許可していません。
デフォルトでは、フィールドはnull
(デフォルト値を持つ値型) で初期化されます。
string gender = radio_male.Checked? "Male" : "Female";
txtGender.Text = gender
それがあなたのテキストボックス名だと思います..
string gender = "";
if (radio_male.Checked)
{
gender = "Male";
}
else if (radio_female.Checked)
{
gender = "Female";
}
txtfirstname.Text = gender;
変数の性別を string.Empty として初期化してから試してください。