Hi,
I can change the ImageUrl after transferring an item from left to right.
BUT if I transfer it to left and then to the right side again. The ImageUrl cannot be change.
Here's the demo:
Thanks in advance for your help.
Christian.
I can change the ImageUrl after transferring an item from left to right.
BUT if I transfer it to left and then to the right side again. The ImageUrl cannot be change.
Here's the demo:
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm1.aspx.vb" Inherits="Test.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
runat
=
"server"
>
<
title
></
title
>
<
script
type
=
"text/javascript"
>
var containerPrefix = '';
var trvElementsID = containerPrefix + 'trvElements';
var trvQueriesID = containerPrefix + 'trvQueries';
var trvOrdersID = containerPrefix + 'trvOrders';
var trvRangesID = containerPrefix + 'trvRanges';
var lsbOrderItemTargetID = containerPrefix + 'lsbOrderItemTarget';
var hidQueriesChangedID = containerPrefix + 'hidQueriesChanged';
var hidOrdersChangedID = containerPrefix + 'hidOrdersChanged';
var hidRangesChangedID = containerPrefix + 'hidRangesChanged';
function ToggleSort(sender, args) {
// debugger;
var imgAsc = 'ascending.png';
var imgDesc = 'descending.png';
var listboxTarget = $find(lsbOrderItemTargetID);
if (listboxTarget) {
var selectedItem = listboxTarget.get_selectedItem();
if (selectedItem) {
listboxTarget.trackChanges();
//imageUrl
var oldImgUrl = selectedItem.get_imageUrl();
var arrUrl = oldImgUrl.split("/");
//value
var oldValue = selectedItem.get_value();
var arrValue = oldValue.split(".");
if (arrValue[0] == 'asc') {
arrValue[0] = 'desc';
arrUrl[arrUrl.length - 1] = imgDesc;
} else {
arrValue[0] = 'asc';
arrUrl[arrUrl.length - 1] = imgAsc;
}
var newImgUrl = arrUrl.join("/");
var newValue = arrValue.join(".");
selectedItem.set_value(newValue);
selectedItem.set_imageUrl(newImgUrl);
listboxTarget.commitChanges();
}
else {
alert('no item selected');
}
}
}
</
script
>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
div
>
<
asp:ToolkitScriptManager
ID
=
"ToolkitScriptManager1"
ScriptMode
=
"Release"
EnableScriptLocalization
=
"true"
EnableScriptGlobalization
=
"true"
CombineScripts
=
"false"
runat
=
"server"
EnablePartialRendering
=
"true"
/>
<
div
>
<
telerik:RadListBox
ID
=
"lsbOrderItemSource"
SelectionMode
=
"Multiple"
AllowTransfer
=
"true"
AllowReorder
=
"false"
TransferToID
=
"lsbOrderItemTarget"
PersistClientChanges
=
"true"
Skin
=
"Outlook"
runat
=
"server"
Height
=
"500px"
Width
=
"30%"
>
<
Items
>
<
telerik:RadListBoxItem
Text
=
"test1"
ImageUrl
=
"Images/ascending.png"
/>
<
telerik:RadListBoxItem
Text
=
"test2"
ImageUrl
=
"Images/ascending.png"
/>
<
telerik:RadListBoxItem
Text
=
"test3"
ImageUrl
=
"Images/ascending.png"
/>
<
telerik:RadListBoxItem
Text
=
"test4"
ImageUrl
=
"Images/ascending.png"
/>
</
Items
>
</
telerik:RadListBox
>
<
telerik:RadButton
runat
=
"server"
ID
=
"teleriktoggle"
Text
=
"ASC/DESC"
OnClientClicked
=
"ToggleSort"
AutoPostBack
=
"false"
></
telerik:RadButton
>
<
telerik:RadListBox
ID
=
"lsbOrderItemTarget"
SelectionMode
=
"Multiple"
AllowReorder
=
"true"
Skin
=
"Outlook"
runat
=
"server"
Height
=
"500px"
Width
=
"30%"
PersistClientChanges
=
"true"
/>
</
div
>
</
div
>
</
form
>
</
body
>
</
html
>
Thanks in advance for your help.
Christian.