我使用 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/