2

これが私の ASP.net プロジェクト内のコードです。Web フォームを使用してオブジェクトにいくつかの値を保存しようとしていますが、次のようなエラー メッセージがポップアップ表示されます。

    textbox.Text = Convert.ToInt16(object.number);
    lstbox.SelectedValue = Convert.ToInt16(object.ID);

オブジェクト クラス内で、変数を int に宣言しました。何が問題なのか教えてください。

4

3 に答える 3

3

文字列/テキスト値を受け入れるプロパティに文字列以外の値を割り当てることはできません。あなたの場合、テキストボックスのテキストプロパティに短い値を割り当てようとしています。Convert.ToStringまたはを使用して値を文字列にキャストしてくださいToString()

だからあなたのコードは

textbox.Text = Convert.ToString(object.number);

また

textbox.Text = object.number.ToString();

リストボックスの選択された値のプロパティを割り当てるときのシナリオは同じです。

lstbox.SelectedValue = Convert.ToString(object.ID);
于 2013-01-22T06:11:14.473 に答える
3

およびプロパティは文字列ですText。そもそもSelectedValueなぜ値をに変換するのですか?short

textbox.Text = object.number.ToString();
lstbox.SelectedValue = object.ID.ToString();
于 2013-01-22T06:09:32.760 に答える
0

オブジェクトに値を渡したいので、オブジェクトの変数 = 入力値にする必要があります。

    object.number = Convert.ToInt16(textbox.Text);
    object.ID = Convert.ToInt16(lstbox.SelectedValue);
于 2013-02-09T21:40:38.680 に答える