|
■No94385 (アマ さん) に返信 > TextBox1.Text = Combobox1.SelectedItem > TextBox2.Text = Combobox1.SelectedItem > TextBox3.Text = Combobox1.SelectedItem > TextBox4.Text = Combobox1.SelectedItem > TextBox5.Text = Combobox1.SelectedItem > TextBox6.Text = Combobox1.SelectedItem
右辺がすべて Combobox1 になっていますが、 Combobox1〜6 にしなくてよいのですか?
そもそも、TextBox に代入する必要も無い気がします。
> sw.Write(TextBox1.Text) > sw.Write(TextBox2.Text)
Write よりも WriteLine の方が良いのでは無いでしょうか?
Write のままだと、 TextBox1.Text = "ab" TextBox2.Text = "cd" の場合と TextBox1.Text = "abc" TextBox2.Text = "d" の場合を区別できないと思います。
> テキストボックスを保存は出来るのですが、保存した内容を読み込みが出来ません。
もしも WriteLine で書き込んでいった場合は、 ReadToEnd のかわりに ReadLine を使うようにすれば、 1 回目の ReadLine は TextBox1 のデータ 2 回目の ReadLine は TextBox2 のデータ 3 回目の ReadLine は TextBox3 のデータ のように処理できると思います。
あるいは、TextBox の内容の保存・読み込みできれば方法は問わないのであれば、 一切コーディングせずに済ませる方法もあります。
(1) フォームデザイナで TextBox1 を選択し、プロパティの一覧の上の方にある "(ApplicationSettings)" - "(PropertyBinding)" の欄を選択して、 その右の [...] をクリックする
(2) 「'TextBox1' のアプリケーション設定」という画面が表示されるので "Text" プロパティの「なし」を開き、 "(新規...)" のリンクをクリックして、 Name = "TXT1" Scope = "User" に設定して、OK で閉じる。
(3) 上記の (1)〜(2) を TextBox2〜TextBox6 に対しても行い、 "(ApplicationSettings)" にて、Text プロパティに対して、TXT2〜TXT6 を割り当てる。
これで、TextBox1〜TextBox6 の内容が自動保存されます。 (保存される設定の一覧は、プロジェクトのプロパティの[設定]タブに集約されます)
|