かんじのC#めも@Wiki内検索 / 「dataGridViewにxmlの内容を表示」で検索した結果
-
dataGridViewにxmlの内容を表示
dataGridViewの内容をxmlに保存で保存したxmlファイルの内容をdataGridViewに表示します。 下準備として、フォーム上にdataGridView1とdataSet1とbutton1を貼り付けます。 dataSet1とdataGridView1のプロパティは dataGridViewの内容をxmlに保存 で設定した内容と同じにします。 button1のクリックイベントを private void button1_Click(object sender, EventArgs e) { dataSet1.ReadXml("test.xml"); } とすれば、ボタンクリックでXMLの内容がdataGridViewに反映されます。 また、列情報もXMLに保存されている場合、 private void... -
フォームコントロール関連
...内容をxmlに保存 dataGridViewにxmlの内容を表示 -
メニュー
... dataGridViewにxmlの内容を表示 ・ スレッド関連 ├ スレッドの生成 ├ 別スレッドで操作 └ ロッ... -
dataGridViewの内容をxmlに保存
dataGridViewで編集した内容をxmlに保存するには、 dataSetのWriteXmlメソッドを使います。 まず下準備として、dataGridViewとdataSetの関連付けをします。 フォーム上にdataGridView1とdataSet1とbutton1を貼り付けて dataSet1のTablesに、適当な名前のテーブルを追加し、 Culumnsに列コレクションを作成します。 dataGridView1のプロパティを DataSource dataset1 DataMember Table1 ←上で追加したテーブル名 button1のクリックイベントに private void button1_Click(object sender, EventArgs e) { dataSet1.WriteXml("t... -
文字列の連結
文字列はstringを使って操作できる。 string a; a = "う"; a += "ほ!"; MessageBox.Show(a); で問題ないが、 string a; int i; for(i=0;i 10000;i++) { a += "うほ!" + i.ToString(); } MessageBox.Show(a); みたいな回数が多い場合、stringはそのつどメモリを取得しなおすので、非常に効率が悪い。 その場合はStringBuilderを使う。 StringBuilder a = new StringBuilder(); int i; for(i=0;i 10000;i++) { a.Append("うほ!" + i.ToString()); } ... -
別フォームの操作
別のフォームを表示するには、フォームクラスを生成して、showメソッドを呼ぶ。 Form2 fm = new Form2(); fm.Show(); 生成だけして表示してないフォームのコントロールを操作する場合、ちょっとしたコツが必要。 public partial class Form2 Form { public Form2() { InitializeComponent(); CreateGraphics(); } と、表示したいフォームのコンストラクタに CreateGraphics(); を追加すると、Show()メソッドが呼ばれる前にフォーム上のコントロールをすべて生成してくれるので、別フォームから操作したい場合も変な例外が発生しない。。。。かも!(自信ない) -
別スレッドからフォームコントロールを変更
delegateでInvokeでごにょごにょ・・・・ もう少し簡単に使いたい気もする。 // 噂のデリゲート delegate void delegate_AddText(string str); // スレッドからこいつを呼び出すと幸せになれる public void AddLogThread(string str) { this.Invoke(new delegate_AddText(addtxt),str); } // 実際に処理をするメソッド private void addtxt(string str) { textBox1.AppendText(str); } -
ロックで同時アクセス回避
複数スレッドで、変数等に同時アクセスすると困る場合、 ロックオブジェクトを生成して、回避する方法がある。 まず、ロック用のオブジェクトを生成 private Object LockObj = new Object(); 同時アクセスを回避したいところで、 private void Hogehoge() { Lock(LockObj) { // 同時アクセスしたくない処理 } } Lockのカッコ内は1つのスレッドしか入って来れず、 同時にアクセスしたとしても、先着順で待たされる。 先に入ったスレッドが、カッコから抜けたら、 次のスレッドが処理を行う。 ちなみにこの方法は結構重いので、使いどころはよく考慮する。 -
スレッドの生成
とりあえずおまじないをして using System.Threading スレッドとして実行したいメソッドを書く。 public void TestThread() { // なにかの処理 } スレッドの実行を開始したいところで、 Thread th = new Thread(TestThread); th.Start(); でOK。 停止は th.Abort(); -
テキストファイルの保存
テキストファイルに文字を書き込んで保存する StreamWriterを使って書き込むらしい。 StreamWriter file_test = new StreamWriter("C \\test.txt",true,Encoding.GetEncoding(\"Shift_JIS\")); file_test.WriteLine("うほ!!");// どんどん追加できる。 file_test.WriteLine("2行目のうほ!!"); file_test.Close(); // 開けたら閉める newしたのにdeleteしないの?!とか、メモリの開放が気になってしょうがない人は以下のとおり using(StreamWriter file_test = new StreamWri... -
blog的なもの/2006年04月06日/テスト日記
#blognavi blog機能のテスト カテゴリ [その他] - trackback- 2006年04月06日 15 42 41 名前 コメント #blognavi -
blog的なもの/2006年04月06日
blog的なもの/2006年04月06日/テスト日記 #blognavi - @wiki全体から「dataGridViewにxmlの内容を表示」で調べる