<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AssignInvoices.aspx.cs" Inherits="iConnect.InvoicesScaling.Views.AssignInvoices"
Title="AssignInvoices" MasterPageFile="~/Shared/Silver.master" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<
asp:Content
ID
=
"content"
ContentPlaceHolderID
=
"DefaultContent"
runat
=
"Server"
>
<
script
src
=
"../Shared/js/jquery-1.6.2.min.js"
type
=
"text/javascript"
></
script
>
<
script
src
=
"../Shared/js/jquery.tooltip.js"
type
=
"text/javascript"
></
script
>
<
script
type
=
"text/javascript"
src
=
"../Silverlight.js"
></
script
>
<
h1
style
=
"text-align: center;"
>
Assign Invoices</
h1
>
<
br
/>
<
table
>
<
tr
>
<
td
>
<
telerik:RadListBox
ID
=
"RadListBox1"
runat
=
"server"
AllowReorder
=
"True"
Skin
=
"Black"
Sort
=
"Ascending"
Height
=
"400px"
Width
=
"250px"
EnableDragAndDrop
=
"True"
>
<
ButtonSettings
TransferButtons
=
"All"
></
ButtonSettings
>
<
HeaderTemplate
>
<
h5
style
=
"color: White; text-align: center"
>
USERS</
h5
>
</
HeaderTemplate
>
</
telerik:RadListBox
>
</
td
>
<
td
>
<
telerik:RadListBox
ID
=
"RadListBox2"
runat
=
"server"
SelectionMode
=
"Multiple"
EnableDragAndDrop
=
"True"
Height
=
"400px"
Width
=
"150px"
AllowReorder
=
"True"
Skin
=
"Black"
>
<
ButtonSettings
TransferButtons
=
"All"
></
ButtonSettings
>
<
HeaderTemplate
>
<
h5
style
=
"color: White; text-align: center"
>
GROUPS</
h5
>
</
HeaderTemplate
>
</
telerik:RadListBox
>
</
td
>
<
td
>
<
telerik:RadListBox
ID
=
"RadListBox3"
runat
=
"server"
EnableDragAndDrop
=
"True"
Height
=
"400px"
Width
=
"150px"
AllowReorder
=
"True"
Skin
=
"Black"
>
<
ButtonSettings
TransferButtons
=
"All"
></
ButtonSettings
>
<
HeaderTemplate
>
<
h5
style
=
"color: White; text-align: center"
>
STAGING</
h5
>
</
HeaderTemplate
>
</
telerik:RadListBox
>
</
td
>
<
td
>
<
telerik:RadButton
ID
=
"RadButton1"
runat
=
"server"
Text
=
"Assign"
Skin
=
"Black"
Width
=
"100px"
Height
=
"50px"
OnClick
=
"RadButton1_Click"
>
</
telerik:RadButton
>
<
br
/>
<
br
/>
<
telerik:RadButton
ID
=
"RadButton2"
runat
=
"server"
Text
=
"Unassign"
Skin
=
"Black"
Width
=
"100px"
Height
=
"50px"
OnClick
=
"RadButton2_Click"
>
</
telerik:RadButton
>
</
td
>
<
td
>
</
td
>
<
td
>
</
td
>
<
td
>
<
h1
>
Total Invoices Resume </
h1
>
<
telerik:RadGrid
ID
=
"RadGrid1"
runat
=
"server"
Skin
=
"Windows7"
>
</
telerik:RadGrid
>
</
td
>
</
tr
>
<
tr
>
<
td
>
</
td
>
<
tr
>
<
td
>
</
td
>
<
td
>
<
telerik:RadGrid
ID
=
"RadGrid2"
runat
=
"server"
Skin
=
"Windows7"
>
</
telerik:RadGrid
>
<
h1
>
Total Invoices Resume </
h1
>
<
telerik:RadGrid
ID
=
"RadGrid3"
runat
=
"server"
Skin
=
"Windows7"
>
</
telerik:RadGrid
>
</
td
>
</
tr
>
</
tr
>
</
table
>
<
br
/>
<
br
/>
</
asp:Content
>
Protected Sub RadGrid1_UpdateCommand(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid1.UpdateCommand
Dim editItem As GridEditableItem = CType(e.Item, GridEditableItem)
Dim newValues As Hashtable = New Hashtable()
e.Item.OwnerTableView.ExtractValuesFromItem(newValues, editItem)
For Each entry In newValues
'LogManager.WriteToDebugLog("c:\log\qwe\", "- newValues key" & entry.key & " value" & CType(entry.value, String))
Next
End Sub
<
form
id
=
"form1"
runat
=
"server"
>
<
div
>
<
telerik:RadScriptManager
runat
=
"server"
></
telerik:RadScriptManager
>
<
telerik:RadEditor
runat
=
"server"
></
telerik:RadEditor
>
</
div
>
</
form
>
<script type=
"text/javascript"
>
$(document).ready(
function
() {
$(
"#success"
).load(
"Editor.aspx"
,
function
(response, status, xhr) {
if
(status ==
"error"
) {
var
msg =
"Sorry but there was an error: "
;
$(
"#error"
).html(msg + xhr.status +
" "
+ xhr.statusText);
}
});
});
</script>
Hello,
We have certain problem by RadGrid filter. We need to bind data using DataTable class. We have prepared data for RadGrid by combination of data from database with computed data. Therefore,the SqlDataSource is not useful for us. We have found example regarding mentioned scenario in your forum. The example uses ItemCreated event, but it doesn’t work. Data is binding correctly, however the filtering doesn’t work.
We consider the solution based on DataTable (stored
in a session) shared by controls inherited from a GridTemplateColumn.
However, this approach seems to be complicated for described aim which appears
to be trivial.
So, is there any way to accomplish the DataTable binding as a data source
for the RadGrid without harm the filtering?
Thank yout very much for your advice.
<telerik:RadGrid ID="RadGridData" runat="server" Width="100%" AutoGenerateColumns="false"
AllowPaging="true" PageSize="10" ShowGroupPanel="false" ShowFooter="true" AllowFilteringByColumn="true"
OnPreRender="RadGridData_PreRender" AllowSorting="true" AllowMultiRowSelection="false"
GridLines="None" EnableAjaxSkinRendering="true" EnableAJAX="true"
onneeddatasource="RadGridData_NeedDataSource" OnItemCreated="RadGridData_ItemCreated" ViewStateMode="Disabled">
<ExportSettings ExportOnlyData="true" IgnorePaging="true" OpenInNewWindow="true" />
<MasterTableView AutoGenerateColumns="false" EditMode="InPlace" AllowFilteringByColumn="True"
ShowFooter="True" TableLayout="Auto" DataKeyNames="Id" CommandItemDisplay="Top">
<CommandItemSettings ShowRefreshButton="false" ShowAddNewRecordButton="false" ShowExportToWordButton="true" ShowExportToExcelButton="true"
ShowExportToCsvButton="true" />
<Columns>
<telerik:GridBoundColumn UniqueName="Caption" DataField="Caption" HeaderText="Caption"
AllowFiltering="true" DataType="System.String">
<HeaderStyle Width="25%" />
<FilterTemplate>
<telerik:RadComboBox ID="RadComboBoxCaption" DataTextField="Caption" DataValueField="Caption" Height="200px" AppendDataBoundItems="true"
SelectedValue='<%# ((GridItem)Container).OwnerTableView.GetColumn("Caption").CurrentFilterValue %>'
runat="server" OnClientSelectedIndexChanged="CaptionChanged">
<Items>
<telerik:RadComboBoxItem Text="All" />
</Items>
</telerik:RadComboBox>
<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
<script type="text/javascript">
function CaptionChanged(sender, args) {
var tableView = $find("<%# ((GridItem)Container).OwnerTableView.ClientID %>");
tableView.filter("Caption", args.get_item().get_value(), "EqualTo");
}
</script>
</telerik:RadScriptBlock>
</FilterTemplate>
</telerik:GridBoundColumn>
<telerik:GridDateTimeColumn DataField="DateTime" HeaderText="RTU Date and time" SortExpression="DateTime"
UniqueName="DateTime" PickerType="DateTimePicker" AllowFiltering="false">
<HeaderStyle Width="25%" />
</telerik:GridDateTimeColumn>
<telerik:GridBoundColumn UniqueName="FormatedValue" DataField="FormatedValue" HeaderText="Value"
AllowFiltering="true" DataType="System.String">
<HeaderStyle Width="25%" />
</telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="State" DataField="State" HeaderText="State"
AllowFiltering="true" DataType="System.String">
<HeaderStyle Width="25%" />
</telerik:GridBoundColumn>
</Columns>
<PagerStyle Mode="NextPrevAndNumeric" />
</MasterTableView>
</telerik:RadGrid>
protected void RadGridData_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridFilteringItem)
{
GridFilteringItem filterItem = (GridFilteringItem)e.Item;
RadComboBox combo = (RadComboBox)filterItem["Caption"].FindControl("RadComboBoxCaption");
combo.DataSource = dataTable; // this datatable is also used for binding data for table
combo.DataBind();
combo.AutoPostBack = true;
}
}
var refCbTree; var refCb; function ReferenceComboBoxOpeningHandler(sender, args) { refCb = sender; refCbTree = $find(sender.get_attributes().getAttribute("treeID")); service.LoadReferenceRoot(sender.get_attributes().getAttribute("refID"), onRequestNodesSuccess); } function onRequestNodesSuccess(result) { if (!refCbTree) return; refCb.trackChanges(); refCbTree.trackChanges(); for (i = 0; i < result.length; i++) { var node = new Telerik.Web.UI.RadTreeNode(); node.set_text(result[i].Text); node.set_value(result[i].Value); refCbTree.get_nodes().add(node); } refCbTree.commitChanges(); refCb.commitChanges();}