首页 > 解决方案 > 在powershell脚本中将点击事件添加到数据网格时出错

问题描述

我正在尝试向Add_CellMouseClick我现有的 powershell 脚本添加一个事件。但是,在添加代码后,我在 powershell 中不断出现错误(见下文)。我添加的代码基于Powershell datagridview 单元格单击事件以及我似乎无法再次找到参考的其他几个页面。我想我可能错过了一些简单的东西,但找不到可能是什么。

我尝试了一些代码变体,但不断收到相同的错误。不幸的是,我找不到太多关于我正在尝试做的事情的例子。似乎也无法仅在 c# 中找到有关此方法的任何 powershell 文档。

数据网格的现有 xmal 代码(这与填充数据网格的代码相同)

<DataGrid Name="HistoryGrid" HorizontalAlignment="Left" Height="400" Margin="19,536,-365,0" VerticalAlignment="Top" Width="353">
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding E1}"  Header="Employee #"/>
        <DataGridTextColumn Binding="{Binding E2}"  Header="Employee Name"/>
        <DataGridTextColumn Binding="{Binding E3}"  Header="Employee Username"/>
    </DataGrid.Columns>
</DataGrid>

我尝试了 2 个选项

$HistoryGrid.Add_CellMouseClick({HistoryClick})

或者

$HistoryGrid.Add_CellMouseClick({if ($_.button -eq 'Left'){HistoryClick}})

我想要发生的是当有人单击数据网格中的一个条目时,它会运行 HistoryClick 函数。不幸的是,我得到了下面的错误。这就是为什么我认为我错过了一些东西。

方法调用失败,因为 [System.Windows.Controls.DataGrid] 不包含名为“Add_CellMouseClick”的方法。在 Utility.ps1:141 char:1 + $HistoryGrid.Add_CellMouseClick({if ($_.button -eq 'Left'){HistoryCl ... + ~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~ + CategoryInfo : InvalidOperation: (:) [], RuntimeException + FullyQualifiedErrorId : MethodNotFound

标签: wpfpowershellxamldatagrid

解决方案


推荐阅读