c# - Devexpress GridView 如何获取选定行的字段值?

标签 c# asp.net devexpress aspxgridview

我使用 DevexpressGridView 显示所有 TOPIC (id,title,content)

<dx:ASPxGridView ID="gv" runat="server"
OnSelectionChanged="gv_SelectionChanged" >

我有 grid_SelectionChanged 事件:

protected void gv_SelectionChanged(object sender, EventArgs e)
    {

        int id= selected row...???; //how can I get the value of selected row
        string sql = "select * from TOPIC where idTOPIC="+id;
        DataTable topic = l.EXECUTEQUERYSQL(sql);
        TextBox1.Text = topic.Rows[0][1].ToString();
    }

...

DevGridview 中似乎没有gv.SelectedRow 方法。

按照建议,我已经尝试使用 FocusedRowIndex 方法,但我真的不知道获取所选行的值的正确语法。

求助!!!

最佳答案

更改选择不同于更改焦点行。请参阅 Selection 的文档两者的区别。

您可以使用 gv.GetSelectedFieldValues获取被选中的行。

var ids = gv.GetSelectedFieldValues("id");
foreach( var id in ids )
    DoSomethingWithObject(id);

您应该处理 FocusedRowChanged如果您对焦点行感兴趣,则事件。

您可以使用FocusedRowIndex 值来索引gv.DataSource 的行,例如:

DataTable ds = (DataTable)gv.DataSource;
var id = ds.Rows[gv.FocusedRowIndex]["id"];

或者您可以使用 var id = gv.GetRowValues(gv.FocusedRowIndex, "id") .

关于c# - Devexpress GridView 如何获取选定行的字段值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19206186/

相关文章:

c# - 向无窗口命令行进程发送命令(从 C# 应用程序启动)

c# - 如何将 GridView.DataSource 导出到数据表或数据集?

c# - 如何从函数返回 null 或 bool

c# - 与 jQuery UI 对话框交互后如何继续使用 asp.net 服务器端按钮单击方法?

c# - 在 C# 中使用来自服务器资源管理器的数据连接

c# - CodeBehind 中的对象存活多长时间?

c# - DevExpress RepositoryItemComboBox 无法显示组合框列表数据

delphi - Devexpress ExpressQuantumTreeList 与虚拟 TreeView ?

c# - 单元格导航到 GridControl

c# - 如何使用 iText7 从 C# 中的 MemoryStream 创建 Image 对象?