TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
Niveditha Gavsker
NA
36
2.6k
How to make individual cell of gridview editable?
Dec 11 2011 12:31 AM
Hi
Here I am 1st importing the csv file to gridview, but after importing i need to edit individual cell to be edited, How to make it using C# code?
I'm importing csv file to gridview and I have used the below code, but its showing an error like "Index was out of range. Must be non-negative and less than the size of the collection.Parameter name: index".
How to Solve this?
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType==DataControlRowType.DataRow)
{
Label lblSrNo = (Label)e.Row.FindControl("lblSerialNo");
LinkButton _singleClickButton=(LinkButton)e.Row.Cells[0].Controls[0];
string _jsSingle=ClientScript.GetPostBackClientHyperlink(_singleClickButton, "");
if (Page.Validators.Count > 0)
_jsSingle = _jsSingle.Insert(11, "if(Page_CLientValidate())");
for(int columnIndex=_firstEditCellIndex ;columnIndex<e.Row.Cells.Count; columnIndex++)
{
string js=_jsSingle.Insert(_jsSingle.Length-2,columnIndex.ToString());
e.Row.Cells[columnIndex].Attributes["onclick"]=js;
e.Row.Cells[columnIndex].Attributes["style"]+="cursor:pointer;cursor:hand;";
}
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
GridView _gridView = (GridView)sender;
switch (e.CommandName)
{
case ("SingleClick"):
int _rowIndex = int.Parse(e.CommandArgument.ToString());
int _columnIndex = int.Parse(Request.Form["__EVENTARGUMENT"]);
_gridView.SelectedIndex = _rowIndex;
_gridView.DataBind();
Control _editControl = _gridView.Rows[_rowIndex].Cells[_columnIndex].Controls[3];
_editControl.Visible = true;
Control _displayControl = _gridView.Rows[_rowIndex].Cells[_columnIndex].Controls[1];
_displayControl.Visible = true;
_gridView.Rows[_rowIndex].Cells[_columnIndex].Attributes.Clear();
ScriptManager.RegisterStartupScript(this, GetType(), "setfocus", "document.getElementById('" + _editControl.ClientID + "').focus();", true);
if (_editControl is TextBox)
{
((TextBox)_editControl).Attributes.Add("onfocus", "this.select()");
}
break;
}
}
protected override void Render(HtmlTextWriter writer)
{
foreach (GridViewRow r in GridView1.Rows)
{
if (r.RowType == DataControlRowType.DataRow)
{
for (int columnIndex = _firstEditCellIndex; columnIndex < r.Cells.Count; columnIndex++)
{
Page.ClientScript.RegisterForEventValidation(r.UniqueID + "$ct100", columnIndex.ToString());
}
}
}
base.Render(writer);
}
Thanks&Regards
Niveditha
Reply
Answers (
1
)
Could you plz help me make a generic convert class???
Error handler