<
telerik:RadGrid
ID
=
"gvMembers"
runat
=
"server"
AutoGenerateColumns
=
"false"
OnNeedDataSource
=
"gvMembers_NeedDataSource"
AllowSorting
=
"true"
AllowPaging
=
"true"
PageSize
=
"10"
AllowAutomaticUpdates
=
"true"
AllowAutomaticInserts
=
"true"
AllowAutomaticDeletes
=
"true"
OnItemCreated
=
"gvMembers_ItemCreated"
OnItemInserted
=
"gvMembers_ItemInserted"
OnPreRender
=
"gvMembers_PreRender"
OnInsertCommand
=
"gvMembers_InsertCommand"
OnItemDataBound
=
"gvMembers_ItemDataBound"
OnUpdateCommand
=
"gvMembers_UpdateCommand"
OnDeleteCommand
=
"gvMembers_DeleteCommand"
>
<
HeaderStyle
CssClass
=
"GridHeader"
/>
<
PagerStyle
Mode
=
"NextPrevNumericAndAdvanced"
/>
<
MasterTableView
AutoGenerateColumns
=
"false"
DataKeyNames
=
"UserID"
CommandItemDisplay
=
"Top"
InsertItemPageIndexAction
=
"ShowItemOnCurrentPage"
>
<
Columns
>
<
telerik:GridEditCommandColumn
></
telerik:GridEditCommandColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserID"
HeaderText
=
"UserID"
ReadOnly
=
"true"
UniqueName
=
"UserID"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"First Name"
SortExpression
=
"FirstName"
UniqueName
=
"firstname"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"Last Name"
SortExpression
=
"LastName"
UniqueName
=
"lastname"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserName"
HeaderText
=
"User Name"
SortExpression
=
"UserName"
UniqueName
=
"username"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"EmailAddress"
HeaderText
=
"Email"
SortExpression
=
"EmailAddress"
UniqueName
=
"email"
></
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
UniqueName
=
"TemplateColumn"
HeaderText
=
"Role"
>
<
ItemTemplate
>
<
asp:Label
ID
=
"Label1"
runat
=
"server"
Text='<%# DataBinder.Eval(Container.DataItem, "Role") %>'>
</
asp:Label
>
</
ItemTemplate
>
<
EditItemTemplate
>
<
asp:DropDownList
ID
=
"ddlRole"
runat
=
"server"
DataTextField
=
"Role1"
DataValueField
=
"RoleID"
></
asp:DropDownList
>
</
EditItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridButtonColumn
ConfirmText
=
"Delete this Member?"
ConfirmDialogType
=
"RadWindow"
ConfirmTitle
=
"Delete"
ButtonType
=
"PushButton"
Text
=
"Delete"
CommandName
=
"Delete"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
I am using a stored procedure to to my updates and have this C# code:
protected void gvMembers_UpdateCommand(object sender, GridCommandEventArgs e)
{
var editableItem = ((GridEditableItem)e.Item);
var memberId = (int)editableItem.GetDataKeyValue("UserID");
int Role = 1;
CheckBox active = (CheckBox)editableItem["valid"].Controls[0];
Boolean bactive = Convert.ToBoolean(active);
string str = active.Text;
string strFirstName = (editableItem["firstname"].Controls[0] as TextBox).Text;
string strLastName = (editableItem["lastname"].Controls[0] as TextBox).Text;
string strUserName = (editableItem["username"].Controls[0] as TextBox).Text;
string strEmail = (editableItem["firstname"].Controls[0] as TextBox).Text;
try
{
//save chanages to Db
DbContext.AAHomicideLogMembersUpdate(memberId, Role, strFirstName, strLastName, strUserName, strEmail, active);
}
catch (System.Exception)
{
string srtt="Dosomething";
}
}
I get an error message when attempting to convert the checkbox value to a boolean value.
How can I accomplish this?
I'm using a RadComboBox and would like to get the selected item that was bound to the combobox instead of the selected value, index or text. I can do that with RadGrid but when I try to do it with a ComboBox the selected item's dataitem is always null.
RadGrid:
Event thisEvent = new Event();
thisEvent = (Event)e.Item.DataItem;
thisEvent is now the bound record of type Event.
RadComboBox:
List<
BWGroup
> individuals = new List<
BWGroup
>();
individuals = _bwContext.BWGroups.Where(x => x.IsActive == true).OrderBy(x => x.BWGroupName).ToList();
IndividualsRadComboBox.DataTextField = "BWGroupName";
IndividualsRadComboBox.DataValueField = "BWGroupID";
IndividualsRadComboBox.DataSource = individuals;
IndividualsRadComboBox.DataBind();
//After event is fired
BWGroup group = new BWGroup();
group = IndividualsRadComboBox.SelectedItem.DataItem as BWGroup;
SelectedValue and SelectedIndex have the proper values but DataItem is always null so group is always null.
Hi,
Has the spreadsheet control is fully released or still in beta version?
I am trying to hide the filter options of a grid based on the type of the column. I have found numerous examples but NONE seem to work. They work the very first time you click on a filter icon. If you then click on a different type of column you get different options but not the correct ones. They seem to be random based on what order you click on the filter icon. Please help!!
var oldFilterStyle = "";
function FilterMenuShowing(sender, eventArgs) {
var menu = eventArgs.get_menu();
var items = menu._itemData;
if (eventArgs.get_column().get_dataType() == "System.String") {
var i = 0;
while (i < items.length) {
if (items[i].value != "NoFilter" && items[i].value != "IsEmpty" &&
items[i].value != "EqualTo" && items[i].value != "NotEqualTo" &&
items[i].value != "StartsWith" && items[i].value != "EndsWith" &&
items[i].value != "Contains" && items[i].value != "DoesNotContain") {
var item = menu._findItemByValue(items[i].value);
if (item != null) {
if (item._element.style.display != "none") {
oldFilterStyle = item._element.style.display;
item._element.style.display = "none";
}
}
}
i++;
}
}
else if (eventArgs.get_column().get_dataType() == "System.Decimal" || eventArgs.get_column().get_dataType() == "System.Int32") {
var i = 0;
while (i < items.length) {
if (items[i].value != "NoFilter" && items[i].value != "IsEmpty" &&
items[i].value != "EqualTo" && items[i].value != "NotEqualTo" &&
items[i].value != "GreaterThan" && items[i].value != "LessThan" &&
items[i].value != "GreaterThanOrEqualTo" && items[i].value != "LessThanOrEqualTo" &&
items[i].value != "Between" && items[i].value != "NotBetween") {
var item = menu._findItemByValue(items[i].value);
if (item != null) {
if (item._element.style.display != "none") {
oldFilterStyle = item._element.style.display;
item._element.style.display = "none";
}
}
}
i++;
}
}
else {
alert(eventArgs.get_column().get_dataType());
var i = 0;
while (i < items.length) {
var item = menu._findItemByValue(items[i].value);
if (item != null) {
if (oldFilterStyle != "" && item._element.style.display == "none")
item._element.style.display = oldFilterStyle;
}
i++;
}
}
<
telerik:RadGrid
ID
=
"gvMembers"
runat
=
"server"
AutoGenerateColumns
=
"false"
OnNeedDataSource
=
"gvMembers_NeedDataSource"
AllowSorting
=
"true"
AllowPaging
=
"true"
PageSize
=
"10"
AllowAutomaticUpdates
=
"true"
AllowAutomaticInserts
=
"true"
AllowAutomaticDeletes
=
"true"
OnItemCreated
=
"gvMembers_ItemCreated"
OnItemInserted
=
"gvMembers_ItemInserted"
OnPreRender
=
"gvMembers_PreRender"
OnInsertCommand
=
"gvMembers_InsertCommand"
OnItemDataBound
=
"gvMembers_ItemDataBound"
OnUpdateCommand
=
"gvMembers_UpdateCommand"
OnDeleteCommand
=
"gvMembers_DeleteCommand"
>
<
HeaderStyle
CssClass
=
"GridHeader"
/>
<
PagerStyle
Mode
=
"NextPrevNumericAndAdvanced"
/>
<
MasterTableView
AutoGenerateColumns
=
"false"
DataKeyNames
=
"UserID"
CommandItemDisplay
=
"Top"
InsertItemPageIndexAction
=
"ShowItemOnCurrentPage"
>
<
Columns
>
<
telerik:GridEditCommandColumn
></
telerik:GridEditCommandColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserID"
HeaderText
=
"UserID"
ReadOnly
=
"true"
UniqueName
=
"UserID"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"First Name"
SortExpression
=
"FirstName"
UniqueName
=
"firstname"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"Last Name"
SortExpression
=
"LastName"
UniqueName
=
"lastname"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserName"
HeaderText
=
"User Name"
SortExpression
=
"UserName"
UniqueName
=
"username"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"EmailAddress"
HeaderText
=
"Email"
SortExpression
=
"EmailAddress"
UniqueName
=
"email"
></
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
UniqueName
=
"TemplateColumn"
HeaderText
=
"Role"
>
<
ItemTemplate
>
<
asp:Label
ID
=
"Label1"
runat
=
"server"
Text='<%# DataBinder.Eval(Container.DataItem, "Role") %>'>
</
asp:Label
>
</
ItemTemplate
>
<
EditItemTemplate
>
<
asp:DropDownList
ID
=
"ddlRole"
runat
=
"server"
DataTextField
=
"Role1"
DataValueField
=
"RoleID"
></
asp:DropDownList
>
</
EditItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridButtonColumn
ConfirmText
=
"Delete this Member?"
ConfirmDialogType
=
"RadWindow"
ConfirmTitle
=
"Delete"
ButtonType
=
"PushButton"
Text
=
"Delete"
CommandName
=
"Delete"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
I am using astored procedure to handle my updates this is My C# code
protected void gvMembers_UpdateCommand(object sender, GridCommandEventArgs e)
{
var editableItem = ((GridEditableItem)e.Item);
var memberId = (int)editableItem.GetDataKeyValue("UserID");
int Role = 1;
CheckBox active = (CheckBox)editableItem["valid"].Controls[0];
Boolean bactive = Convert.ToBoolean(active);
string str = active.Text;
string strFirstName = (editableItem["firstname"].Controls[0] as TextBox).Text;
string strLastName = (editableItem["lastname"].Controls[0] as TextBox).Text;
string strUserName = (editableItem["username"].Controls[0] as TextBox).Text;
string strEmail = (editableItem["firstname"].Controls[0] as TextBox).Text;
try
{
//save chanages to Db
DbContext.AAHomicideLogMembersUpdate(memberId, Role, strFirstName, strLastName, strUserName, strEmail, active);
}
catch (System.Exception)
{
string srtt="Dosomething";
}
}
I am getting an error message on the conversion attempt what am I doing wrong here and what is the proper way to get those values from the checkbox
I have this RAD Grid
<
telerik:RadGrid
ID
=
"gvMembers"
runat
=
"server"
AutoGenerateColumns
=
"false"
OnNeedDataSource
=
"gvMembers_NeedDataSource"
AllowSorting
=
"true"
AllowPaging
=
"true"
PageSize
=
"10"
AllowAutomaticUpdates
=
"true"
AllowAutomaticInserts
=
"true"
AllowAutomaticDeletes
=
"true"
OnItemCreated
=
"gvMembers_ItemCreated"
OnItemInserted
=
"gvMembers_ItemInserted"
OnPreRender
=
"gvMembers_PreRender"
OnInsertCommand
=
"gvMembers_InsertCommand"
OnItemDataBound
=
"gvMembers_ItemDataBound"
OnUpdateCommand
=
"gvMembers_UpdateCommand"
OnDeleteCommand
=
"gvMembers_DeleteCommand"
>
<
HeaderStyle
CssClass
=
"GridHeader"
/>
<
PagerStyle
Mode
=
"NextPrevNumericAndAdvanced"
/>
<
MasterTableView
AutoGenerateColumns
=
"false"
DataKeyNames
=
"UserID"
CommandItemDisplay
=
"Top"
InsertItemPageIndexAction
=
"ShowItemOnCurrentPage"
>
<
Columns
>
<
telerik:GridEditCommandColumn
></
telerik:GridEditCommandColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserID"
HeaderText
=
"UserID"
ReadOnly
=
"true"
UniqueName
=
"UserID"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"First Name"
SortExpression
=
"FirstName"
UniqueName
=
"firstname"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"Last Name"
SortExpression
=
"LastName"
UniqueName
=
"lastname"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserName"
HeaderText
=
"User Name"
SortExpression
=
"UserName"
UniqueName
=
"username"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"EmailAddress"
HeaderText
=
"Email"
SortExpression
=
"EmailAddress"
UniqueName
=
"email"
></
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
UniqueName
=
"TemplateColumn"
HeaderText
=
"Role"
>
<
ItemTemplate
>
<
asp:Label
ID
=
"Label1"
runat
=
"server"
Text='<%# DataBinder.Eval(Container.DataItem, "Role") %>'>
</
asp:Label
>
</
ItemTemplate
>
<
EditItemTemplate
>
<
asp:DropDownList
ID
=
"ddlRole"
runat
=
"server"
DataTextField
=
"Role1"
DataValueField
=
"RoleID"
></
asp:DropDownList
>
</
EditItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridButtonColumn
ConfirmText
=
"Delete this Member?"
ConfirmDialogType
=
"RadWindow"
ConfirmTitle
=
"Delete"
ButtonType
=
"PushButton"
Text
=
"Delete"
CommandName
=
"Delete"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
I need to bind the asp dropdown list for my Update and Insert.
I tried this C# code:
protected void gvMembers_ItemDataBound(object sender, GridItemEventArgs e)
{
DropDownList ddl = (DropDownList)e.Item.FindControl("ddlRole");
ddl.SelectedValue = (string)DataBinder.Eval(e.Item.DataItem, "Role1").ToString();
}
But it gets an error message {"Object reference not set to an instance of an object."} when I try to view the web page.
What is the proper procedure to accomplish this?
I am using RadGrid Control.
I have created the columns for RadGrid dynamically with two textbox, one dropdown and 1 date picker.
I have created controls dynamically using GridTemplateColumn by assigning UniqueName for ItemTemplate, getting ID for each control(TextBox, Dropdown, DatePicker).
User Inputs the value in dynamically created grid.
While clicking on Save button, the value from each row of the grid should be retrieved. But I am not able to retrieve the values since I created the grid with controls dynamically.
Attached the sample for reference.
Requirements |
|
Telerik Product and Version |
|
Supported Browsers and Platforms |
|
Components/Widgets used (JS frameworks, etc.) |