I've searched the forums with no luck.
What I need to do is send an email with the ID of the newly inserted items ID that is generated from SQL(isIdentity)
I was assuming that I could get this info from RadGrid1_ItemInserted but no luck.
Dim editformItem As GridEditFormInsertItem = DirectCast(e.Item, GridEditFormInsertItem)
Dim test As String = editformItem.Item("Task_Id").Text
-DataKeyNames="Task_Id"
I need the id of the inserted item.
Can someone please help.
Thank you
hi
I have an item "Billing & Orders" in the item text and is giving me an error that is caused by "&". When i changed to "Billing and Orders", it works fine. Is there a way to have an "&" in the item text instead of "and"? Thanks a lot.
Not sure whether to use a RadGrid or some other solution here...
I have a database table with x, y coordinate, and a content field.
I want to plot the content in a grid according to the x,y and knowing the size of the total grid, ie 12x6, or 20x10, etc...
Some cells may be empty (no row in the table).
Suggestions?
Hi
I'm having problems with the grid losing the dynamic column metadata when using the batch edit "save changes" and cancel changes" buttons. See the attached pictures. The grid is declared in the ASPX page and the columns are assigned in the page_load event only on the first page load.
Here is the grid declaration:
<
telerik:RadGrid
ID
=
"radGridGrades"
runat
=
"server"
AllowPaging
=
"false"
Width
=
"100%"
enableEmbeddedSkins
=
"false"
Skin
=
"CorpsNETBootstrap"
AllowSorting
=
"true"
ClientSettings-Selecting-AllowRowSelect
=
"true"
AllowMultiRowSelection
=
"true"
ClientSettings-AllowKeyboardNavigation
=
"true"
ItemStyle-HorizontalAlign
=
"Center"
HeaderStyle-HorizontalAlign
=
"Center"
AlternatingItemStyle-HorizontalAlign
=
"Center"
AllowMultiRowEdit
=
"true"
OnBatchEditCommand
=
"radGridGrades_BatchEditCommand"
OnNeedDataSource
=
"radGridGrades_NeedDataSource"
OnItemDataBound
=
"radGridGrades_ItemDataBound"
>
<
MasterTableView
AutoGenerateColumns
=
"False"
DataKeyNames
=
"ID"
Width
=
"100%"
CommandItemDisplay
=
"Top"
CommandItemStyle-Height
=
"15px"
CommandItemSettings-ShowCancelChangesButton
=
"true"
CommandItemSettings-ShowAddNewRecordButton
=
"false"
PageSize
=
"10"
EnableNoRecordsTemplate
=
"true"
EditMode
=
"Batch"
InsertItemPageIndexAction
=
"ShowItemOnCurrentPage"
>
<
Columns
>
</
Columns
>
<
EditFormSettings
>
<
PopUpSettings
ScrollBars
=
"None"
/>
</
EditFormSettings
>
<
NoRecordsTemplate
>
<
div
align
=
"center"
style
=
"color:darkorange"
>---------- No Records to Display -----------</
div
>
</
NoRecordsTemplate
>
</
MasterTableView
>
<
ClientSettings
>
</
ClientSettings
>
</
telerik:RadGrid
>
And here is the code-behind for the page:
public
partial
class
GradesByClass : CorpsNET.BasePage
{
CorpsNETServer.ScheduledClass _scheduledClass;
CorpsNETServer.Lookup _academicSchedule;
CorpsNETServer.AcademicAssignment _academicAssignment;
protected
void
Page_Load(
object
sender, EventArgs e)
{
base
.Page_Load(sender, e);
if
(Request.QueryString[
"ScheduledClassID"
] !=
null
)
{
_scheduledClass = ScheduledClassService.GetByID(Int32.Parse(Request.QueryString[
"ScheduledClassID"
]));
}
if
(!Page.IsPostBack)
{
if
(((UserProfile)Session[
"_userProfile"
]).IsAuthorized(
"Grades - Edit"
) ==
true
)
{
Master.SetLocation(
"GradesByClass.aspx"
,
"Grade Entry for: <b>"
+ _scheduledClass.SubjectName +
"</b>"
,
true
);
}
else
{
throw
new
CorpsNETServer.CorpsNETAuthException(
"Grades - Edit"
);
}
//rdpRosterDate.SelectedDate = DateTime.Now;
lblClassPeriod.Text = _scheduledClass.ClassPeriodName;
lblClassroom.Text = _scheduledClass.ClassroomName;
lblClassSchedule.Text = _scheduledClass.ClassroomScheduleName;
lblSubject.Text = _scheduledClass.SubjectName;
lblTeacher.Text = _scheduledClass.TeacherName;
lblTrimester.Text = _scheduledClass.TrimesterName;
LoadGridStructure();
}
}
public
void
LoadGridStructure()
{
radGridGrades.Columns.Add(
new
GridBoundColumn() { ReadOnly=
true
, UniqueName =
"Corpsmember"
, DataField =
"EmployeeName"
, HeaderText =
"Corpsmember"
, SortExpression =
"EmployeeName"
});
radGridGrades.Columns.Add(
new
GridBoundColumn() { ReadOnly =
true
, UniqueName =
"AcademicScheduleName"
, DataField =
"AcademicScheduleName"
, HeaderText =
"Academic Schedule"
, SortExpression =
"AcademicScheduleName"
});
radGridGrades.Columns.Add(
new
GridBoundColumn() { ReadOnly =
true
, UniqueName =
"CurrentStatusName"
, DataField =
"CurrentStatusName"
, HeaderText =
"Current Status"
, SortExpression =
"CurrentStatusName"
});
List<AcademicAssignment> _academicAssignemnts = AcademicAssignmentService.GetForScheduledClass(_scheduledClass.ID);
for
(
int
i = 0; i < _academicAssignemnts.Count; i++)
{
radGridGrades.Columns.Add(
new
GridBoundColumn() { UniqueName = _academicAssignemnts[i].ID.ToString(), HeaderText =
"Assignment: <a href='#' class='RadGrid_CorpsNETBootstrap_a' onclick =openEditAcademicAssignmentWindow("
+ _academicAssignemnts[i].ID +
"); return false;>"
+ _academicAssignemnts[i].Name +
"</a> Due Date: <b>"
+ _academicAssignemnts[i].DueDateString +
"</b>"
});
}
}
public
void
LoadStudents()
{
radGridGrades.DataSource = EmployeeService.GetForScheduledClass(_scheduledClass.ID);
}
protected
void
radGridGrades_ItemDataBound(
object
sender, GridItemEventArgs e)
{
if
(e.Item
is
GridDataItem)
{
GridEditableItem form = (GridEditableItem)e.Item;
int
employeeid = Int32.Parse(e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex][
"ID"
].ToString());
//goto through all the assignments and load any existing grades for that assignment
List<AcademicAssignment> _academicAssignments = AcademicAssignmentService.GetForScheduledClass(_scheduledClass.ID);
for
(
int
i = 0; i < _academicAssignments.Count; i++)
{
//radGridGrades.Columns.Add(new GridBoundColumn() { UniqueName = _academicAssignemnts[i].ID.ToString(), HeaderText = "Assignment: <b>" + _academicAssignemnts[i].Name + "</b> Due Date: <b>" + _academicAssignemnts[i].DueDateString + "</b>" });
//get the grade for this assignment and Employee
Grade _grade = GradeService.GetForAcademicAssignment(employeeid, _academicAssignments[i].ID);
if
(_grade !=
null
)
{
if
(_academicAssignments[i].LetterGrade ==
true
)
form[_academicAssignments[i].ID.ToString()].Text = _grade.LetterGrade;
else
form[_academicAssignments[i].ID.ToString()].Text = _grade.Points.ToString();
}
else
form[_academicAssignments[i].ID.ToString()].Text =
string
.Empty;
}
}
}
protected
void
radGridGrades_NeedDataSource(
object
source, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
{
LoadStudents();
}
protected
void
radGridGrades_BatchEditCommand(
object
sender, GridBatchEditingEventArgs e)
{
//todo
}
}
On the first page load everything works fine. (see pic 1) I want to edit only the values in a single column. I'm aware that I have not yet implemented the save code. the problem is that the first columns lose their definitions after postback by either the 'cancel changes' or 'save changes' batch edit buttons. CAn you point me in the right direction? Thanks.
I have a ticket open for this but I thought maybe others have/are encountering this issue. The RadEditor will not work in RenderMode=Mobile on iOS 10, at least not in a RadWindow. If I switch to class mode it works fine, but the toolbar looks horrible on the small screen.
What options/workarounds do I have? Can you have a different toolbar on mobile without changing everything? Why does this not work? The issue is you can open and edit the text but when you close it you can no longer scroll the RadWindow, which you cold scroll fine before editing the text in the editor.
The only solution I have found for copy and paste into RadGrid is from 2010. Has anything been done since then to implement pasting into RadGrid since then?
Hi,
For users with small screens there is a big difference in accessing all UX elements in the dialog windows.
Please compare attached Classic and Lightweight screenshots.
On Classic all elements (read Pager) are always accessible by using the browser scrollbar.
On Lightweight the Pager is not accessible in Chrome and Edge. In Firefox a scrollbar appears in the RadWindow so the user can scrolldown there.
Screenshots are made with Default skin; as we use Material skin the problem occurs even on modern laptop sceens as the UX elements are all bigger.
Marc
In a telerik:RadGrid, I have a GridEditCommandColumn like this:
<
telerik:RadGrid
ID
=
"grdMembers"
runat
=
"server"
OnEditCommand
=
"grdMembers_OnEditCommand"
AutoGenerateColumns
=
"False"
>
<
MasterTableView
DataKeyNames
=
"MemberID"
ShowHeadersWhenNoRecords
=
"false"
>
<
Columns
>
<
telerik:GridEditCommandColumn
HeaderStyle-Width
=
"30px"
EditImageUrl
=
"pen-16x16.png"
ButtonType
=
"ImageButton"
UniqueName
=
"TemplateColumn"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
(some more columns are actually included, but I omit those for now).
The grdMembers_OnEditCommand is having a breakpoint.
Now, when the ButtonType is either ImageButton or FontIconButton, the pen icon shows up (not otherwise), but the OnEditCommand will not fire.
Why not?
If the ButtonType is LinkButton, the first column will read "Edit", and the OnEditCommand fires if such a link is clicked.
It would help if I could paste code in this forum without line endings being killed.
Also, undo would be appreciated.
Thanks!