0

所以我将DataGridwithDataContext设置为DataTable, 并通过FillJobsGrid()when加载Window_Loaded。这工作正常,但我希望能够在通过命令行启动时选择特定项目,args 部分没有问题,只有 2 个 args 和一个开关和一个值。该值是 中一行的 Id JobsGrid,我看不到如何选择这一行。在运行之前我在这里查看BackUpSelectedClicked() 了许多其他页面中的灵感,但无论我采用哪种方式,我都没有得到. 我想这是关于从哪个事件运行我的代码。在mod之前我有:datagrid.Items.count

private void FillJobsGrid()
{
    using (MySqlClientWrapper db = new MySqlClientWrapper(MyConnString))
    {
        string sql = "SELECT * FROM backupjobs";
        SetJobsTable(db.GetDataTable(sql));
        JobsGrid.DataContext = GetJobsTable();
    }

}

我希望能解决问题的代码是:

if (RunFromCommandLine)
{
    foreach (DataRowView job in JobsGrid.Items)
    {
        if (job != null)
        {
            DataRow jobRow = job.Row;
            long id = Convert.ToInt32(jobRow["Id"]);

            if (Convert.ToInt32(CommandLineJobId) == id)
            {
                JobsGrid.SelectedItem = job;
            }
        }
    }
    BackUpSelectedClicked();
}

我已尝试将其插入FillJobsGrid,并将其放入DataGrid.DataContextChangedInitialisedLoaded。任何帮助表示赞赏。

4

0 回答 0