所以我将DataGrid
withDataContext
设置为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.DataContextChanged
,Initialised
等Loaded
。任何帮助表示赞赏。