Bobby Ross
Top achievements
Rank 1
Bobby Ross
asked on 04 Feb 2012, 04:44 PM
I think I found a bug in the latest realease 2011.3.11.1219 that causes the UserAddedRow event not to fire.. Found this after upgrading a large project and critical events that occur after a user completes adding a new row no longer fired.
This is not confined to my project as it can be reproduced easily in new projects.
To reproduce you just need a bound grid with the new row position set to bottom, then hook the UserAddingRow event. The event will never fire. Change the new row position back to default (Top) and the event fires.
This doesn't appear to affect any other events including the UserAddingRow event, only UserAddedRow.
This is not confined to my project as it can be reproduced easily in new projects.
To reproduce you just need a bound grid with the new row position set to bottom, then hook the UserAddingRow event. The event will never fire. Change the new row position back to default (Top) and the event fires.
This doesn't appear to affect any other events including the UserAddingRow event, only UserAddedRow.
// Change new row position to bottom
this
.radGridView1.AddNewRowPosition = SystemRowPosition.Bottom;
// Add an event for UserAddedRow
this
.radGridView1.UserAddedRow +=
new
GridViewRowEventHandler(radGridView1_UserAddedRow);
// Event will not fire
void
radGridView1_UserAddedRow(
object
sender, GridViewRowEventArgs e)
{
throw
new
NotImplementedException();
}
5 Answers, 1 is accepted
0
Richard Slade
Top achievements
Rank 2
answered on 06 Feb 2012, 11:08 AM
Hello,
I haven't been able to replicate this issue. Please can you try the sample below and let me know if this works for you.
Form1 Designer
Form 1
hope that helps, but let me know if you have any questions
Richard
I haven't been able to replicate this issue. Please can you try the sample below and let me know if this works for you.
Form1 Designer
namespace
RadControlsWinFormsApp1
{
partial
class
Form1
{
/// <summary>
/// Required designer variable.
/// </summary>
private
System.ComponentModel.IContainer components;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected
override
void
Dispose(
bool
disposing)
{
if
(disposing && (components !=
null
))
{
components.Dispose();
}
base
.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private
void
InitializeComponent()
{
this
.radGridView1 =
new
Telerik.WinControls.UI.RadGridView();
((System.ComponentModel.ISupportInitialize)(
this
.radGridView1)).BeginInit();
this
.SuspendLayout();
//
// radGridView1
//
this
.radGridView1.Dock = System.Windows.Forms.DockStyle.Fill;
this
.radGridView1.Location =
new
System.Drawing.Point(0, 0);
this
.radGridView1.Name =
"radGridView1"
;
this
.radGridView1.Size =
new
System.Drawing.Size(284, 262);
this
.radGridView1.TabIndex = 0;
this
.radGridView1.Text =
"radGridView1"
;
this
.radGridView1.UserAddedRow +=
new
Telerik.WinControls.UI.GridViewRowEventHandler(
this
.radGridView1_UserAddedRow);
//
// Form1
//
this
.AutoScaleDimensions =
new
System.Drawing.SizeF(6F, 13F);
this
.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this
.ClientSize =
new
System.Drawing.Size(284, 262);
this
.Controls.Add(
this
.radGridView1);
this
.Name =
"Form1"
;
this
.Text =
"Form1"
;
((System.ComponentModel.ISupportInitialize)(
this
.radGridView1)).EndInit();
this
.ResumeLayout(
false
);
}
#endregion
private
Telerik.WinControls.UI.RadGridView radGridView1;
}
}
Form 1
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Linq;
using
System.Text;
using
System.Windows.Forms;
using
Telerik.WinControls.UI;
namespace
RadControlsWinFormsApp1
{
public
partial
class
Form1 : Form
{
public
Form1()
{
InitializeComponent();
List<Person> people =
new
System.Collections.Generic.List<Person>();
people.Add(
new
Person(1,
"Richard"
,5));
people.Add(
new
Person(2,
"Chris"
, 10));
people.Add(
new
Person(3,
"Pete"
, 7));
radGridView1.DataSource = people;
this
.radGridView1.AddNewRowPosition = Telerik.WinControls.UI.SystemRowPosition.Bottom;
}
private
void
radGridView1_UserAddedRow(
object
sender, Telerik.WinControls.UI.GridViewRowEventArgs e)
{
MessageBox.Show(e.Row.Cells[1].Value.ToString());
}
}
public
class
Person
{
public
Person(
int
userId,
string
userName,
int
totalStuff)
{
UserId = userId;
UserName = userName;
TotalStuff = totalStuff;
}
public
Person()
{ }
public
int
UserId
{
get
;
set
;
}
public
string
UserName
{
get
;
set
;
}
public
int
TotalStuff
{
get
;
set
;
}
}
}
hope that helps, but let me know if you have any questions
Richard
0
Bobby Ross
Top achievements
Rank 1
answered on 06 Feb 2012, 08:00 PM
Exact same results... No firing of UserRowAdded event using the example you provided when the row is positioned at the bottom of the grid. I ran this project on other machines and verified that all References were to the correct versions. I cannot figure this out...
Have tried it on XP, .NET 4 and 3.5 with the same results. Just installed this version the other day and it broke, prior to that everything worked fine...
Also I just to make sure, this was built using the latest Q3 build? 2011.3.11.1219
Have tried it on XP, .NET 4 and 3.5 with the same results. Just installed this version the other day and it broke, prior to that everything worked fine...
Also I just to make sure, this was built using the latest Q3 build? 2011.3.11.1219
0
Richard Slade
Top achievements
Rank 2
answered on 07 Feb 2012, 10:18 AM
Hello,
Ok - I have found that the UserAddedRow event does fire when it's on the bottom if you press enter on the last cell. If you tab through the last cell then the event does not fire. I'll see if I can provide a workaround for this, but in the long term, Telerik will need to address this in a release in my view.
Richard
Ok - I have found that the UserAddedRow event does fire when it's on the bottom if you press enter on the last cell. If you tab through the last cell then the event does not fire. I'll see if I can provide a workaround for this, but in the long term, Telerik will need to address this in a release in my view.
Richard
0
Richard Slade
Top achievements
Rank 2
answered on 07 Feb 2012, 01:22 PM
Hello,
I've looked in the Public Issue Tracking System for this issue and it appears that (analmost identical) issue is already known about. Please refer to this issue ticket
Looks like this is scheduled to be fixed in Q2 2012.
Hope this helps
Richard
I've looked in the Public Issue Tracking System for this issue and it appears that (analmost identical) issue is already known about. Please refer to this issue ticket
Looks like this is scheduled to be fixed in Q2 2012.
Hope this helps
Richard
0
Hi guys,
Thank you for writing.
I can confirm that when the new row is at the bottom and you tab through the cells, the UserAddedRow event is not fired. This issue is different from the one in the PITS item mentioned by Richard and this is why I will log it in PITS as a new item and we will do our best to fit it in our plans for the upcoming release (without making any certain promises). Here is a link to the item, where you can add your vote for it and also you can track its status updates: http://www.telerik.com/support/pits.aspx#/public/winforms/9640.
@Bobby, I have updated your Telerik points for this report.
If you guys find any other case when the event is not fired, do not hesitate to write back.
Kind regards,
Stefan
the Telerik team
Thank you for writing.
I can confirm that when the new row is at the bottom and you tab through the cells, the UserAddedRow event is not fired. This issue is different from the one in the PITS item mentioned by Richard and this is why I will log it in PITS as a new item and we will do our best to fit it in our plans for the upcoming release (without making any certain promises). Here is a link to the item, where you can add your vote for it and also you can track its status updates: http://www.telerik.com/support/pits.aspx#/public/winforms/9640.
@Bobby, I have updated your Telerik points for this report.
If you guys find any other case when the event is not fired, do not hesitate to write back.
Kind regards,
Stefan
the Telerik team
Sharpen your .NET Ninja skills! Attend Q1 webinar week and get a chance to win a license! Book your seat now >>