2013-04-16 47 views
1

我有Telerik的radgrid控件一个问题:获取值时radgrid控件处于编辑模式(就地)

  • 我有17列的radgrid控件,只有6是editables(其他有只读=”真“)

  • 一个键触发,试图更改保存到数据库的方法(不是radgrid控件的事件,所以我还没有电网参数)

  • 我可以从radgrid.edititems值(6列)但我不知道在哪里找到其他11 c olumns是不可编辑...

这里是我的代码

protected void HiddenButton_Click(object sender, EventArgs e) 
{ 
    try 
    { 
     DataTable dt = Oggetti.DT_RDO(); 

     foreach (GridEditableItem editedItem in dgRDO.EditItems) 
     { 
      Hashtable newValues = new Hashtable(); 
      //The GridTableView will fill the values from all editable columns in the hash 
      editedItem.OwnerTableView.ExtractValuesFromItem(newValues, editedItem); 

进入newValues我已编辑的值,在那里我能得到其他值???

回答

3

请尝试使用下面的代码片段。

.ASPX

<Columns> 
    <telerik:GridBoundColumn DataField="ID" UniqueName="ID" HeaderText="ID"> 
    </telerik:GridBoundColumn> 
    <telerik:GridBoundColumn DataField="Name" UniqueName="Name" HeaderText="Name"> 
    </telerik:GridBoundColumn> 
    <telerik:GridEditCommandColumn> 
    </telerik:GridEditCommandColumn> 
</Columns> 

.ASPX.CS

protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) 
{ 
    if (e.Item is GridEditableItem && e.Item.IsInEditMode) 
    { 
     if (e.Item is GridEditFormInsertItem) 
     { 
      // insert 
     } 
     else 
     { 
      // Edit 
      // Please add below code in your page 
      GridEditableItem item = e.Item as GridEditableItem; 
      item["Name"].Controls[0].Visible = false; 
      Label l1 = new Label(); 
      l1.ID = "l1"; 
      l1.Text = (item["Name"].Controls[0] as TextBox).Text; 
      item["Name"].Controls.Add(l1); 
     } 
    } 
} 

注:我们不能让只读列在ExtractValuesFromItem方法的价值。如果我们将任何列设置为只读,那么它将不会以editmode呈现。这就是为什么我们无法访问这些列。

添加上面的代码后,您可以在ExtractValuesFromItem方法中看到/获取两个列的值。

请在下面检查链接了解更多信息。

http://www.telerik.com/community/forums/aspnet-ajax/grid/reading-read-only-column-in-ragdrid-update.aspx

1

我已经通过从GridBoundColumn只读属性解决了这个,而是,禁用在DataGrid的ItemDataBound事件中的可编辑文本框。

ASPX

<telerik:GridBoundColumn DataField="BillingRate" HeaderText="Rate" /> 

ASPX.VB

​​3210
相关问题