2012-03-08 22 views
0

2ページのタブコントロールを持つwinformsアプリケーションがあります。自動的にxmlをDatagridviewに読み込みます。TabControlのonClick

両方のページで、私はTaskTableと呼ばれるデータグリッドビューに表示されるデータを持っています。データは、XMLファイルにバインドされたTaskDataSetから表示されます。

しかし、データを表示する唯一の方法は[XMLを読む]ボタンをクリックすることです。そのため、いずれかのページが最初にクリックされたときに、データグリッドビューは空です。

いずれかのページをクリックすると、データグリッドビューが自動的に入力されます。

これを行うにどのように任意のアイデア:それは場合に役立ちます。ここ

は、Read XMLボタンの私のコードです:

private void ReadXmlButton_Click(object sender, EventArgs e) // event handler to display saved tasks. 
    { 

     if (TaskTable.Rows.Count == 0) 
     { 
      DataGridViewCheckBoxColumn column = new DataGridViewCheckBoxColumn(); // checkbox column = 'column' 

      { 
       column.HeaderText = "Complete"; 
       column.Name = "Complete"; 
       column.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells; 
       column.FlatStyle = FlatStyle.Standard; 
       column.ThreeState = false; 
       column.CellTemplate = new DataGridViewCheckBoxCell(); 
       column.CellTemplate.Style.BackColor = Color.White; 
       column.CellTemplate.Style.ForeColor = Color.Green; 
      } 

      TaskTable.Columns.Insert(0, column); // Column of checkboxes. 

      TaskDataSet.Clear(); // Clears dataset 
      TaskDataSet.ReadXml(fileURL); 
      TaskTable.DataSource = TaskDataSet; 
      TaskTable.DataMember = "Task"; 
      TaskTable.Columns[5].Visible = false; // hides numeric priority - only used for sorting 
     } 
     else 
     { 
      TaskDataSet.Clear(); // Clears dataset 
      TaskDataSet.ReadXml(fileURL); // reads xml to retrieve any additional tasks that have been added to the XML file.      
      TaskTable.DataSource = TaskDataSet; 
      TaskTable.DataMember = "Task"; 
      TaskTable.Columns[5].Visible = false; // hides numeric priority - only used for sorting 
     } 

    } 

任意の助けいただければ幸いです! ​​

は、そのイベントにフックアップし、あなたのXMLをロードします。以下は、おそらく最も適切である -

+0

フォームコンストラクタでデータを入力しますか?いくつかのコンテキストが役立ちます。 –

答えて

0

クイックGoogle検索は、TabControlのは、イベントの数を提起することを示しています。

+0

返事をありがとう。申し訳ありませんが私の質問で少しミスを犯しました。 1つのtabControlが2つではありません。私が必要とするのは、タブコントロールのどのページがクリックされたかに基づいてトリガーされるイベントです。私はそれに似た問題を推測しています! – Rob

関連する問題