<telerik:RadRotator ID="RadRotator_Slider" PauseOnMouseOver="false" runat="server" Skin="cms" EnableEmbeddedSkins="false">
<ItemTemplate>
<asp:Image ID="Image" runat="server" style="cursor:pointer" ImageUrl='<%# DataBinder.Eval(Container.DataItem, "Image") %>' AlternateText="" />
</ItemTemplate>
</telerik:RadRotator>
When Item is clicked, the following event is called and a redirection to
specified URL is executed:
Protected Sub RadRotator_Slider_ItemClick(o As Object, e As RadRotatorEventArgs) Handles RadRotator_Slider.ItemClick
Dim dt As DataTable = Session("DataSource")
Dim frame As RadRotatorItem = e.Item
Dim index As Integer = frame.Index
Dim Link As String = dt.Rows(index).Item("LinkAdress")
If Link <> "" Then Response.Redirect(Link)
End Sub
For some specific items, there is no URL. For those items, I would like to disable the
itemclick event and if possible, I would also like to change the cursor style when hovering
over the image back to normal. As a result, no postback action should be executed on items without url.
Is that possible?
protected
void
RadComboBox_StatusList_SelectedIndexChanged(
object
o, Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs e)
{
SetMessage(
"Hello"
);
}
<
telerik:RadComboBox
ID
=
"RadComboBox_StatusList"
runat
=
"server"
DataSourceID
=
"StatusList"
AutoPostBack
=
"true"
OnSelectedIndexChanged
=
"RadComboBox_StatusList_SelectedIndexChanged"
DataTextField
=
"Status"
DataValueField
=
"StatusID"
SelectedValue='<%#Bind("StatusID") %>'>
</
telerik:RadComboBox
>
void ITemplate.InstantiateIn(Control owner)
{
RadGrid rg = new RadGrid();
rg.ID = "UserManagementTemplateGrid";
rg.Width = 600;
rg.Skin = "Default";
rg.NeedDataSource += new GridNeedDataSourceEventHandler(rg_NeedDataSource);
rg.RegisterWithScriptManager = true;
rg.PagerStyle.Mode = GridPagerMode.NextPrevAndNumeric;
rg.ShowHeader = true;
rg.AutoGenerateColumns = false;
rg.AutoGenerateEditColumn = false;
rg.AllowAutomaticInserts = true;
rg.AllowAutomaticUpdates = true;
rg.AllowAutomaticDeletes = true;
rg.AllowSorting = true;
rg.PageSize = 10;
rg.AllowPaging = true;
rg.MasterTableView.Name = "MasterTableView";
rg.MasterTableView.EditMode = GridEditMode.InPlace;
rg.MasterTableView.DataKeyNames = new string[] { "ID", "UserName", "Password", "Email", "UserTypeID", "Active" };
rg.MasterTableView.Columns.Add(AddBoundColumn("ID", "ID", false));
rg.MasterTableView.Columns.Add(AddBoundColumn("UserName", "User name", true));
rg.MasterTableView.Columns.Add(AddBoundColumn("Password", "Password", true));
rg.MasterTableView.Columns.Add(AddBoundColumn("Email", "Email", true));
rg.MasterTableView.Columns.Add(
AddTemplateDropDownListColumn("UserTypeID", ListTypes.UserType, "Type", "UserTypeName", "UserTypeID")
);
rg.MasterTableView.Columns.Add(
AddTemplateDropDownListColumn("Active", ListTypes.Active, "Active", "Active", "Active")
);
GridEditCommandColumn gecc = new GridEditCommandColumn();
gecc.UniqueName = "EditCommandColumn";
gecc.ButtonType = GridButtonColumnType.ImageButton;
gecc.EditText = "Edit";
gecc.UpdateText = "Save";
gecc.CancelText = "Cancel";
gecc.InsertText = "Add new";
rg.MasterTableView.Columns.Add(gecc);
rg.MasterTableView.CommandItemDisplay = GridCommandItemDisplay.Top;
rg.MasterTableView.CommandItemSettings.AddNewRecordText = "Add new";
//grid events
rg.ItemInserted += new GridInsertedEventHandler(rg_ItemInserted);
rg.ItemUpdated += new GridUpdatedEventHandler(rg_ItemUpdated);
rg.ItemDeleted += new GridDeletedEventHandler(rg_ItemDeleted);
rg.InsertCommand += new GridCommandEventHandler(rg_InsertCommand);
//Adding RadGrid to Control
owner.Controls.Add(rg);
}
void rg_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
RadGrid rg = (RadGrid)sender;
rg.DataSource = User.GetUsers;
}
void rg_ItemInserted(object sender, GridCommandEventArgs e)
{
throw new NotImplementedException();
}
switch
(e.CommandName)
{
case
RadGrid.EditCommandName:
e.Item.OwnerTableView.IsItemInserted =
false
;
e.Item.Expanded =
true
;
break
;
case
RadGrid.InitInsertCommandName:
// Cancel any edit form
foreach
(GridItem item
in
e.Item.OwnerTableView.Items)
{
if
(item
is
GridEditableItem)
{
GridEditableItem ei = item
as
GridEditableItem;
ei.Edit =
false
;
}
}
break
;
default
:
break
;
}
function
onClientContextMenuItemClicking(sender, eventArgs)
{
var
node = eventArgs.get_node();
var
item = eventArgs.get_menuItem();
if
(item.get_text() ==
"Edit"
)
node.startEdit();
else
if
(item.get_text() ==
"Add"
)
{
var
newnode =
new
Telerik.Web.UI.RadTreeNode();
newnode.set_text(
"New Item"
);
node.get_nodes().add(newnode);
newnode.startEdit();
}
}
<
telerik:GridBoundColumn
HeaderText
=
"Type"
DataField
=
"Type"
UniqueName
=
"Type"
AutoPostBackOnFilter
=
"true"
>
<
FilterTemplate
>
<
telerik:RadComboBox
ID
=
"cmbType"
runat
=
"server"
DataSource="<%# TypeFilterItems %>"
DataValueField="TypeId"
DataTextField="Title"
EmptyMessage="All"
AllowCustomText="true"
Width="130px"
OnClientDropDownClosing="FilterOnType">
<
ItemTemplate
>
<
div
class
=
"combo-item-template"
>
<
div
class
=
"clear"
>
<
asp:CheckBox
runat
=
"server"
ID
=
"chkType"
Checked
=
"true"
onclick
=
"TypeCheckBoxClick(this)"
style
=
"float:left;"
/>
<
p
class
=
"floatLeft"
><%# Eval("Title") %></
p
>
</
div
>
</
div
>
</
ItemTemplate
>
</
telerik:RadComboBox
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock3"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function FilterOnType(sender, args) {
var tableView = $find("<%# Container.OwnerTableView.ClientID %>");
tableView.filter("Type", text, "Custom");
}
function TypeCheckBoxClick(chk) {
var combo = $find('<%# Container.FindControl("cmbType").ClientID %>');
// Get the collection of all items
var items = combo.get_items();
text = ""; values = "";
// Enumerate all items
for (var i = 0; i <
items.get_count
(); i++) {
var
item
=
items
.getItem(i);
// Get the checkbox element of the current item
var chk1 = $get(combo.get_id() + "_i" + i + "_chkType");
if (chk1.checked) {
text += item.get_text() + ",";
values += item.get_value() + ",";
}
}
// Remove the last comma from the string
text
= text.replace(/,$/, "");
values
= values.replace(/,$/, "");
combo.set_text(text);
}
</script>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>