2011-12-05 52 views
3

當用戶在Telerik Rad Grid中選擇一行時,我想要在這一行中輸入字段。這個怎麼做? 如何選擇Telerik RadGrid中的行?

+0

http://stackoverflow.com/questions/33822075/cannot-identify-selected-page-in-telerik-grid-i-need-selected-page-to-be - underl – Sachin

回答

9

這是一個有點棘手,但很容易,你做完一次後。

第1步:

轉到radgrid控件本身和編輯字段的DataKeyNames = 「」(下MasterTableView),並添加數據字段,你是拉:

<MasterTableView ... DataKeyNames="ColumnNameFromSqlGoesHere"> 

第2步:

決定如何抓取行更改(SelectedIndexChanged)上的值或附加命令(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"]; 

等等......您明白了。

2

試試這個。這可能會幫助你。

步驟1:在radgrid控件

STEP 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

+1

歡迎來到StackOverflow!請在答案中添加一些解釋。這樣,如果鏈接死亡,你的答案仍然有用。 –

+0

你可以在這個網站上編輯你的帖子。在這種情況下,我已將您的評論編輯爲答案 - 其他人也可以在此處編輯您的帖子。 –

+0

謝謝@ S.L.Barth。 – suyog