This is a migrated thread and some comments may be shown as answers.

auto-selected row in edit mode

2 Answers 170 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Andy
Top achievements
Rank 1
Andy asked on 30 Dec 2011, 01:11 AM
Hi All,

When user clicks on Edit, I would like that row automatically selected in the selected mode.
Please help

Thanks.

Andy.

2 Answers, 1 is accepted

Sort by
0
Jayesh Goyani
Top achievements
Rank 2
answered on 30 Dec 2011, 06:38 AM
Hello,

<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="false"
          OnNeedDataSource="RadGrid1_NeedDataSource"
          ondetailtabledatabind="RadGrid1_DetailTableDataBind"
          onitemcommand="RadGrid1_ItemCommand" onitemdatabound="RadGrid1_ItemDataBound"
          onprerender="RadGrid1_PreRender">
          <MasterTableView>
              <Columns>
              <telerik:GridClientSelectColumn></telerik:GridClientSelectColumn>
                  <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>
          </MasterTableView>
          <ClientSettings>
              <Selecting AllowRowSelect="true" />
          </ClientSettings>
      </telerik:RadGrid>

public int? _SelectedIndex { get; set; }
 
    protected void Page_Load(object sender, EventArgs e)
    {
 
    }
    protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
    {
        dynamic data = new[] {
                new { ID = "1", Name ="Name11",ParentID = "0"},
                new { ID = "2", Name ="Name11",ParentID = "0"},
                new { ID = "3", Name ="Name11",ParentID = "0"},
                new { ID = "4", Name ="Name11",ParentID = "0"}
            };
        RadGrid1.DataSource = data;
    }
    protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
    {
        if (e.Item is GridEditableItem && e.Item.IsInEditMode)
        {
            GridEditableItem item = e.Item as GridEditableItem;
            _SelectedIndex = item.ItemIndex;
        }
    }
    protected void RadGrid1_DetailTableDataBind(object sender, GridDetailTableDataBindEventArgs e)
    {
 
    }
    protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e)
    {
          if (RadGrid.UpdateCommandName == e.CommandName)
                     {
                            _SelectedIndex = null;
                       }
    }
    protected void RadGrid1_PreRender(object sender, EventArgs e)
    {
        if (_SelectedIndex != null)
        {
// it will select row and also checked client select checkbox
            RadGrid1.MasterTableView.Items[(int)_SelectedIndex].Selected = true;
        }
    }


Thanks,
Jayesh Goyani
0
Shinu
Top achievements
Rank 2
answered on 30 Dec 2011, 06:48 AM
Hello Andy,

Try the following code.
C#:
protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
 if (e.Item is GridEditableItem && e.Item.IsInEditMode)
 {
  GridEditableItem item = (GridEditableItem)e.Item;
  item.Selected = true;
  item.BackColor = System.Drawing.Color.Red;
 }
}

-Shinu.
Tags
Grid
Asked by
Andy
Top achievements
Rank 1
Answers by
Jayesh Goyani
Top achievements
Rank 2
Shinu
Top achievements
Rank 2
Share this question
or