zoukankan      html  css  js  c++  java
  • 在Winform中,获取DataGrid当前选定行对应的数据

    我们知道,当使用Datagrid 的时候,往往会使用DataTable,DataSet,DataView作为其数据源,那么当填充后,我们能不能将DataGrid选中行对应的DataSet的数据取出来?

    在讲述答案之前,先要指出,不能使用 CType(Me.DataGrid1.DataSource,DataTable).Rows(Me.DataGrid1.CurrentRowIndex)来获取,因为如果DataGrid里的数据经过排序或者有增减,将是CurrentRowIndex不能对应DataTable的行号,因此将出错。

    每个 Form 都有一个 BindingContextBindingContext 负责管理控件所绑定到的数据集合。

    可以通过 BindingContext(Me.DataGrid1.Datasource) 可以得到BindingManagerBase 对象,该对象允许对 Windows 窗体上绑定到相同数据源的数据绑定控件进行同步。

    BindingManagerBase 包含有Position,Count分别指示数据源的当前位置和记录数。
    BindingManagerBase 还有一个属性就是Current,它就代表当前记录。所以可以通过该属性获取DataGrid选中行对应的DataSet的数据,如:

    Dim drv As DataRowView = BindingContext(Me.DataGrid1.DataSource).Current
    MessageBox.Show drv(0)

    转自:http://blog.csdn.net/walkinhill/archive/2004/10/29/158677.aspx
  • 相关阅读:
    poj_1836 动态规划
    动态规划——最长上升子序列
    poj_3260 动态规划
    poj_3628 动态规划
    动态规划——背包问题
    poj_2559 单调栈
    poj_3415 后缀数组+单调栈
    poj_2823 线段树
    poj_2823 单调队列
    poj_3250 单调栈
  • 原文地址:https://www.cnblogs.com/asyuras/p/270476.html
Copyright © 2011-2022 走看看