- 題名: オブジェクトへの参照を動的に取得できますか?
- 日時: 2008/11/07 14:40:49
- ID: 23328
- この記事の返信元:
- (なし)
- この記事への返信:
- [23329] Re[1]: オブジェクトへの参照を動的に取得できますか?2008/11/07 16:23:54
- ツリーを表示
すみません、図表モードにし忘れました。
あまりエレガントではありませんが^^;
using句に
using System.Collections.Generic;
を追加
>
ロードイベント、ボタンクリックイベント、出力メソッドなりであらかじめ以下を定義します。ボタン名はbtnOutPutと過程します。
List<Control> lstTxt = new List<Control>();
List<Control> lstCbx = new List<Control>();
foreach(Control ctrl in btnOutPut.Parent.Controls)
{
if(ctrl is TextBox)
{
lstTxt.Add((TextBox)ctrl);
}
else if(ctrl is ComboBox)
{
lstCbx.Add((ComboBox)ctrl);
}
}
//テキストボックスとコンボボックスの個数は同じと過程しています
for(int i = 0 ; i < lstTxt.Count ; i ++)
{
string cmbName = ((ComboBox)lstCbx[i]).SelectedValue.ToString();
string txtName = ((TextBox)lstTxt[i]).Text;
textFile.WriteLine(cmbName , txtName);
}
動かなかった場合はすみません…
分類:[.NET]
VisualC#のプログラミングで以下ご存知の方が
いればお願いします。
画面にコンボボックスが10個あり、それに付随するテキストボックスも10個あります。
これを全て、ファイルに書き出したと思っています。
その時に、以下のようにただ羅列すれば可能ではありますが、数が増えれば
増えるほど、羅列が長くなります。
たとえば、ループで回してオブジェクトへの参照を動的するといった方法
は無いのでしょうか?
textFile.WriteLine(cmbNmae1.Text,txtName1.Text)
textFile.WriteLine(cmbNmae2.Text,txtName2.Text)
textFile.WriteLine(cmbNmae3.Text,txtName3.Text)
それ以外の方法で、お勧めの方法がありましたら、
よろしくお願いします。
以上