如何在Telerik RadGrid中选择行?

时间:2011-12-05 23:11:21

标签: c# asp.net telerik telerik-grid

当用户在Telerik Rad Grid中选择一行时,我想在此行中取字段。这该怎么做?                                                                        

3 个答案:

答案 0 :(得分:10)

这有点棘手,但在你完成一次之后很容易。

第1步。

转到Radgrid本身并编辑字段DataKeyNames =“”(在MasterTableView下)并添加您要拉的数据字段:

<MasterTableView ... DataKeyNames="ColumnNameFromSqlGoesHere">

第2步。

决定如何获取值,行更改(SelectedIndexChanged)或按下附加命令的Buttong按下(ItemCommand)。

如果行更改,请根据您的问题:

protected void RadGrid1_SelectedIndexChanged(object sender, EventArgs e)
{
    var z = RadGrid1.SelectedItems[0].OwnerTableView.DataKeyValues[RadGrid1.SelectedItems[0].ItemIndex]["ColumnNameFromSqlGoesHere"];
}

这会将变量“z”赋给您在该给定行选择的列(ColumnNameFromSqlGoesHere)的值。

如果您希望每次更改行时选择多个变量,则需要在DataKeyNames =“”下添加要选择的所有值。 (以逗号分隔)。然后,您将通过SelectedIndexChanged方法中的代码获取每个值:

var a = RadGrid1.SelectedItems[0].OwnerTableView.DataKeyValues[RadGrid1.SelectedItems[0].ItemIndex]["SecondColumnGoesHere"];

var b = RadGrid1.SelectedItems[0].OwnerTableView.DataKeyValues[RadGrid1.SelectedItems[0].ItemIndex]["ThirdColumnGoesHere"];

等......你明白了。

答案 1 :(得分:2)

这应该让你去。这是来自Telerik的解决方案:Retrieving primary key values for selected items

答案 2 :(得分:2)

试试这个。这可能对你有所帮助。

步骤1:在radgrid中添加一个radiobutton列

第1步:获取radgrid中所选行的主键。

    int primaryKey =0;
    RadioButton radioButton;  
    for (int i = 0; i < RadGrid1.Items.Count; i++)  
    {  
        radioButton = RadGrid1.Items[i].FindControl("rdSelect") as RadioButton;
        If (radioButton.Checked)
        { 
           primaryKey = RadGrid1.MasterTableView.Items[e.Item.ItemIndex]["ID"].Text;
        }
    }

如果条件条件中的行将仅用于通过更改字段datakey名称来获取所选行中的字段,即将“ID”更改为其他字段

阅读这篇文章了解更多详情...

http://codedotnets.blogspot.in/2012/01/get-primary-key-selected-radiobutton.html