私はWindowsフォームアプリケーションに取り組んでいます。ウィンドウフォームに2つのtab2があります。各タブで、dgvRoundという名前のdatagridviewを作成します。これらの2つのタブの2つのdatagridviewに2つの異なるデータセットをロードしました。tab1からtab2に切り替えても、tab1にdatagridviewデータが表示されます。新しいデータでdatagridviewを更新するtab2のdgvRoundを表示するには、どうすれば(通貨?)変更できますか?
// tabView is my main tab page control
// Add a new tab for a new round
string title = "Round " + Convert.ToString(intRound);
TabPage myTabPage = new TabPage(title);
tabView.TabPages.Add(myTabPage);
// set up datagridview box
DataGridView dgvRound = new DataGridView();
myTabPage.Controls.Add(dgvRound);
// set up the datagridview column and row headings
SetupTableView(dgvRound);
//load datagridview in a loop with different data from different dataset
string[] row1 = new string[] { "array of datas" };
dgvRound.Rows.Add(row1);
上記のコードを呼び出して、いくつかの変数に応じてタブとdgvを複数回作成しました。各タブの各データグリッドのデータは問題ありません。しかし、tab2からdatagridview(dgvRound)からデータをプルしようとすると、tab2ではなくtab1にデータが表示されます。例:dgvRound.Rows [0] .Cells["Game1"]。Value。tab2.dgvRound.Rows [0] .Cells ["Game 1"]。Valueを確認するにはどうすればよいですか?
あなたの助けをありがとうダニエル
HotSoftのおかげで、動的に作成されたタブページで現在のdatagridviewを検索するコードをついに見つけました。これを追加して、現在動作しています。TabPage CurrentTabPage = tabView.SelectedTab; //ここですべてのコントロールを取得しますControl.ControlCollectioncol= CurrentTabPage.Controls; // dgv foreach(Control myControl in col){if(myControl.ToString()== "System.Windows.Forms.DataGridView"){DataGridView tempdgv =(DataGridView)myControl; tempdgv.SelectAll(); dgvRound = tempdgv; }}ご協力いただきありがとうございます...