c# – 如何获取所选行Devexpress GridView的字段值?

前端之家收集整理的这篇文章主要介绍了c# – 如何获取所选行Devexpress GridView的字段值?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我用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();
    }

看来gv.SelectedRow方法在DevGridview中不存在.

按照建议,我尝试使用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#相关文章