检测数据网格视图中哪一列显示编辑控件

2024-01-03

我有一个 DataGridView 负责显示一些数据,我的两列允许用户使用组合框输入。

问题在于,一列只需要在其列表中显示预设值,但另一列需要显示预设并允许用户输入自己的值。

我通过使用以下代码显示组合框的编辑控件来实现此目的:

Private Sub DGV_EditingControlShowing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) Handles DGV.EditingControlShowing
    'todo: figure out which control is being edited (the reason or the action) and only allow the action column to allow user input
    If TypeOf e.Control Is DataGridViewComboBoxEditingControl Then
        Dim cb As ComboBox = e.Control
        cb.DropDownStyle = ComboBoxStyle.DropDown
    End If
End Sub

这允许用户输入bothDGV 中的组合框,但我只想允许用户输入其中之一。

有什么方法可以检测编辑控件来自 DGV 中的哪一列,这样我就不会为两列运行此代码?

我是否缺少更好的方法来做到这一点?


e.Control.EditingControlDataGridView.CurrentCell.ColumnIndex 怎么样?

或者也许只是 DGV.CurrentCell.ColumnIndex?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检测数据网格视图中哪一列显示编辑控件 的相关文章

  • 将 .NET P/Invoke 代码组织为 Win32 API 的最佳实践

    我正在 NET 中重构一个大型且复杂的代码库 该代码库大量使用 P Invoke to Win32 API 该项目的结构不是最好的 我发现 DllImport 语句遍布各处 经常为同一函数重复 并且还以多种方式声明 导入指令和方法有时声明为
  • 使用 VB.NET 检查 Word 文档中的字体样式

    我想使用vb net检查一个word文件 并检查文档中的样式是否正确 我必须在word文档中检查这些表达式 a Verdana 16 pt Bold Red b Verdana 12 pt Bold Italic Blue c Verdan
  • 如何在 Winform DataGridView 中创建不同的单元格格式

    我有一个 DataGridView 我将其绑定到 DataTable DataTable 是一个全数字值 要求 DataGridView 中的每 n 行都包含文本 而不是数值 以便在视觉上为用户分隔部分 我很高兴在绑定后将此文本数据放入 D
  • VB.NET 中的静态方法实现

    我很困惑Static在 VB NET 中的实现 在 C 中 我们可以创建静态类和静态方法来为我们的应用程序编写实用方法 现在 VB NET 让我们创建Module代替静态类 如果我们在模块中创建一个方法 默认情况下它会变成静态的 但在我的应
  • 将 PDF 嵌入到 WPF 应用程序中

    我正在尝试在 WPF 应用程序中嵌入 显示 PDF 到目前为止 我已经尝试过这些解决方案 但没有成功 在 a 中显示 PDFWindowsFormsHost主持一个AxAcroPdf控制 类似于显示的内容here http hugeonio
  • 在 String.Format 中插入格式化字符?

    我用谷歌搜索了这个 但 VB Net 2008 似乎不允许在 String Format 中插入格式化字符 例如 t r n BAD MessageBox Show String Format 0 tab 1 Foo Bar BAD Mes
  • 什么可能会在一台服务器上导致此错误,而在另一台服务器上则不会?

    我们有一个连接到外部 Web 服务的 ASP Net 网站 几天前它突然停止工作 基本代码是这样的 Try request New ExternalWebService ProcessRequestService Error occurs
  • 重写某些 .Net Framework 控件的绘制以更改其边框颜色?

    SCENARIO 我正在使用第三方 Windows 视觉主题 当我看到我的应用程序时 它看起来像这样 但是当我使用正常的Aero主题 它看起来到处都有可怕的白色边框 QUESTION 我知道应用程序中使用的配色方案取决于视觉风格 但是 我可
  • DataGridView 中的 C# FormatException

    我创建了一个带有一些列的 DataGridView 订单列仅允许用户输入 int 数字 当我输入 j 例如 时 它会抛出 FormatException 并且我尝试添加 try catch 来解决问题 但它看起来不起作用 private v
  • 如何将行从一个 DataGridView 移动到另一个 DataGridView?

    我有两个具有相同列架构的 DataGridView 尽管两个不同的 DataView 作为数据源 如果这很重要 将行从一个数据网格视图移动到另一个数据网格视图的最佳 最快方法是什么 我相信如果您在 DataTable table1 中有一行
  • 确定哪个进程锁定了文件

    我有一个在本地运行良好的单元测试 但上传到 TeamCity 构建服务器时失败 并显示 该进程无法访问该文件 因为它正在被另一个进程使用 在我在测试中做任何事情之前 我检查设置是否有文件 存在 如果存在尝试删除它 这会失败并出现相同的错误
  • 如何在目录中查找或获取文件名 Visual Basic.net 中具有特定单词的文件?

    我需要从名称中包含特定字符的目录中获取文件 下面的代码将返回带有以下内容的任何文件 csv扩大 问题是还有其他 csv 文件我需要保留或得不到 Dim FileLocation As DirectoryInfo New DirectoryI
  • 短路:Or Else 与 Or 组合

    如果我有以下 a OrElse b 是True那么显然 b 永远不会被评估 但如果我添加一个Or 然后呢 a OrElse b Or c c 是否 应该被评估 如果我放入一些括号怎么办 抱歉 如果这是基本的 当然 我可以自己测试答案 但我无
  • 整数溢出 - 将 C# 转换为 VB.Net 代码

    从 C 到 VB Net 的代码转换出现问题 var x 5783615 var y 56811584 var t x y x y和t是整数 在 C 中 t 将为 15536 49728 在 VB Net 中 我会得到一个整数溢出异常 知道
  • MsgBox 和 MessageBox.Show 有区别吗?

    以下两者有区别吗 msgbox messagebox show 有些教程使用 msgbox 有些教程使用另一个 messagebox show 我看到两者都可以有可编辑的样式 但我想知道 为什么有两个 是为了适应老程序员 他们学习过旧版本的
  • VB.NET 中的 Excel 自动调整列

    我这里有我的 VB6 代码并且运行良好 For CLms 1 To 10 ws Columns CLms AutoFit lt Autofilt data on XL sheet Next CLms 我已经搜索了如何在 VB NET 中使
  • VB.net 将窗口置于前面

    我需要在 VB net 2010 中使用什么代码来设置窗口到屏幕前面 我想要实现的是显示紧急警报类型 它是一种表单 由于某些原因我没有使用消息框 有人建议使用以下代码 但这不起作用 Private Sub frmMessage Load B
  • Structure 中的无参数构造函数

    继从这个问题 https stackoverflow com q 32122660 592111关于在中使用不同的 Visual Basic 版本Visual Studio 2015 http en wikipedia org wiki M
  • 在运行时从调试可视化工具中检测源语言

    我正在写一个Visual Studio 的调试可视化工具 https github com zspitz ExpressionToString visual studio debugger visualizer for expression
  • 将 Excel 导入到 Datagridview

    我使用此代码打开 Excel 文件并将其保存在 DataGridView 中 string name Items string constr Provider Microsoft Jet OLEDB 4 0 Data Source Dial

随机推荐