wpf中如何获得dataGrid选中行的值

wpf中如何获得dataGrid选中行的值,第1张

DataRowView SelectedElement = (DataRowView)DataGrid1SelectedItem;

string result = SelectedElementRow[0]ToString();

应该可以的。

在封装自定义组件的时候,看到很多类似表格的控件,表格中的数据都不是固定的,每个表格的表条和内容都不一样,如果直接在 xaml 文件中定义 DataGrid 的话,就显得很麻烦了,可以将期封装成一个动态生成的 DataGrid ,只需按照一定规则的数据格式,就可以生成表格。如下所示为封装后的一个动态表格:

首先来定义一个数据格式,数据格式相对比较简单,只需一个表头字段、内容字段、列宽字段。如下所示:

首先创建一个 UserControl ,然后在里面放入一个 DataGrid ,并设置样式,如下所示:

在 cs 文件中,添加一个方法,用于传递数据,并根据数据动态生成表格,如下所示:

创建好表格后,然后再需要地方通过如下方式进行引入:

然后在 loaded 事件中加入测试数据,来调用 loadData 方法动态添加表格信息,如下所示:

按以下步骤来做,就可以快速的创建一个自定义的动态表格了。

个人博客

,使用时需要先判断thisdataGridView1SelectedCellscount,不为0 在进行上面的 *** 作。

获取总行数:dataGridView1RowsCount;

获取当前选中行索引:int i = thisdataGridView1CurrentRowIndex;

获取当前选中列索引:int j = thisdataGridView1CurrentCellColumnIndex;

方法一:

thisdgvStuListSelectedRows[0]Cells["列"]ValueToString()

方法二:

dgvStuListRows[dgvStuListCurrentRowIndex]Cells["列名"]ValueToString()

/////////////////////////////////////////////////

点击已有数据行时只允许修改和删除,不可以添加,点击空白行时只运行添加,不允许删除和修改,那问题是如何来判断用户点击的是空白行呢,按钮是否可用的判断代码放在哪里呢?

解决方法:给datagrid添加mouse_enter事件

private void userInfo_MouseEnter(object sender,SystemEventArgs e) {

int row = userInfoCurrentCell RowNumber;

if(row == listSize) //list 是我用来存放数据表的对象集合, {

menuMenuItems[0]Enabled = true;

}

else

{

menuMenuItems[0]Enabled = false;

}

}

///////////////////////////////////////////////////////////

dataGrid1SelectedItem 是你dataGrid选中的行所代表的数据实体对象

可以用以下方式获取和设置该对象的属性

(dataGrid1SelectedItem as 实体对象)属性

不太明白你指的textbox是什么。默认表格中的数据都是在前台可以修改的。如果前台修改想改变绑定的数据源,那么只要设置双向绑定就行了。

以上就是关于wpf中如何获得dataGrid选中行的值全部的内容,包括:wpf中如何获得dataGrid选中行的值、WPF-动态生成DataGrid、winform中获取datagridview如何获取选中的行,返回值object等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9310886.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存