点击TabControl自动将xml读取到Datagridview中
本文关键字:读取 Datagridview xml TabControl 点击 | 更新日期: 2023-09-27 18:27:04
我有一个winforms应用程序,它有一个带2页的选项卡控件。
在这两个页面上,我都有显示在名为TaskTable的数据网格视图中的数据。数据是从绑定到XML文件的TaskDataSet中显示的。
然而,目前显示数据的唯一方法是单击"读取XML"按钮,因此当第一次单击其中任何一个页面时,数据网格视图都是空的,这是我不喜欢的。
当点击任意一个页面时,我希望数据网格视图自动填充。
如何做到这一点:
如果有帮助的话,下面是我的"读取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
}
}
如有任何帮助,我们将不胜感激!
快速谷歌搜索显示TabControl引发了许多事件,以下可能是最合适的:http://msdn.microsoft.com/en-us/library/system.windows.forms.tabcontrol.selected.aspx
连接到该事件并加载xml。