DataGridView如何检查选择了哪一行?

时间:2018-11-09 13:11:44

标签: powershell datagridview

非常简单,但是我是DataGridView的新手...我在Powershell Studio中,但是C#和其他属性的属性可能相同...

您如何在按钮单击事件上检查选择了哪一行?我正在尝试$datagridview1.SelectedRows.Contains...$datagridview1.SelectedRows.Equals..,但无法正常工作。解决这个问题的正确方法是什么?

谢谢

$form1_Load={
    $infoposte = $datagridview1.Rows.Add("Information Poste", "Fourni plus d'une vingtaine d'information sur un poste")
    $rerunts = $datagridview1.Rows.Add("Re-Run TS", "Permet de relancer une task sequence qui a déjà été exécutée sur un poste")
    $gestiontrousse = $datagridview1.Rows.Add("Gestion Trousse", "Permet l'ajout, retrait, complete d'une trousse sur un poste distant (via le compte SYSTEM, équivalent de SCCM")
    $controleadistancevnc = $datagridview1.Rows.Add("Contrôle à distance VNC", "Outil de prise de contrôle à distance d'un poste")
    msg * TEST
}



$buttonOK_Click={
    if ($datagridview1.SelectedRows.Equals($infoposte))
    {
    msg * TEST  
    }

}

编辑:我已经像这样工作了,但这是最佳方法吗? :

$formMenuOutilsDPFL_Load={
    $datagridview1.Rows.Add("Information Poste")
    $datagridview1.Rows.Add("Re-Run TS")
    $datagridview1.Rows.Add("Gestion Trousse")
    $datagridview1.Rows.Add("Contrôle à distance VNC")

}



$buttonOK_Click = {
    $InfoPoste = $datagridview1.Rows[0]
    $ReRunTS = $datagridview1.Rows[1]
    $GestionTrousse = $datagridview1.Rows[2]
    $ControleDistance = $datagridview1.Rows[3]


    if ($datagridview1.SelectedRows.Contains($InfoPoste))
...

1 个答案:

答案 0 :(得分:1)

您也可以尝试:

$formMenuOutilsDPFL_Load={
    $datagridview1.Rows.Add("Information Poste", "Fourni plus d'une vingtaine d'information sur un poste")
    $datagridview1.Rows.Add("Re-Run TS", "Permet de relancer une task sequence qui a déjà été exécutée sur un poste")
    $datagridview1.Rows.Add("Gestion Trousse", "Permet l'ajout, retrait, complete d'une trousse sur un poste distant (via le compte SYSTEM, équivalent de SCCM")
    $datagridview1.Rows.Add("Contrôle à distance VNC", "Outil de prise de contrôle à distance d'un poste")

}

$buttonOK_Click = {
    $datagridview1.SelectedRows | ForEach-Object {
        switch ($_.Cells[0].Value) {
            "Information Poste"        { Do-InformationPoste }
            "Re-Run TS"                { Do-ReRunTS }
            "Gestion Trousse"          { Do-GestionTrousse }
            "Contrôle à distance VNC"  { Do-VNC }
        }
    }
}