<
telerik:RadGrid
ID
=
"rgFees"
runat
=
"server"
AutoGenerateColumns
=
"false"
ShowFooter
=
"True"
Skin
=
"Web20"
Height
=
"500px"
>
<
ClientSettings
>
<
Scrolling
AllowScroll
=
"True"
UseStaticHeaders
=
"True"
/>
</
ClientSettings
>
<
MasterTableView
ShowGroupFooter
=
"true"
AllowMultiColumnSorting
=
"true"
GroupLoadMode
=
"Client"
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"FeeDescription"
HeaderText
=
"Fee Description"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
Aggregate
=
"Sum"
DataField
=
"TotalFee"
HeaderText
=
"Total*"
FooterText
=
"Total"
DataFormatString
=
"{0:C}"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"InvoiceId"
HeaderText
=
"Invoice Number"
>
</
telerik:GridBoundColumn
>
</
Columns
>
<
GroupByExpressions
>
<
telerik:GridGroupByExpression
>
<
GroupByFields
>
<
telerik:GridGroupByField
FieldName
=
"InvoiceId"
HeaderText
=
""
/>
</
GroupByFields
>
<
SelectFields
>
<
telerik:GridGroupByField
FieldName
=
"InvoiceId"
HeaderText
=
" "
HeaderValueSeparator
=
"Invoice # "
/>
<
telerik:GridGroupByField
FieldName
=
"TotalFee"
HeaderText
=
" "
HeaderValueSeparator
=
"Total: "
Aggregate
=
"Sum"
FormatString
=
"{0:C}"
/>
</
SelectFields
>
</
telerik:GridGroupByExpression
>
</
GroupByExpressions
>
</
MasterTableView
>
<
ClientSettings
AllowDragToGroup
=
"false"
/>
<
GroupingSettings
ShowUnGroupButton
=
"false"
/>
</
telerik:RadGrid
>
The following Code works and gives the correct group header sum. How do I get a GRAND TOTAL to show up in the footer for the entire grid.
<
telerik:RadGrid
ID
=
"rgFees"
runat
=
"server"
AutoGenerateColumns
=
"false"
ShowFooter
=
"True"
Skin
=
"Web20"
Height
=
"500px"
>
<
ClientSettings
>
<
Scrolling
AllowScroll
=
"True"
UseStaticHeaders
=
"True"
/>
</
ClientSettings
>
<
MasterTableView
ShowGroupFooter
=
"true"
AllowMultiColumnSorting
=
"true"
GroupLoadMode
=
"Client"
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"FeeDescription"
HeaderText
=
"Fee Description"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"TotalFee"
HeaderText
=
"Total*"
FooterText
=
"Total"
DataFormatString
=
"{0:C}"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"InvoiceId"
HeaderText
=
"Invoice Number"
>
</
telerik:GridBoundColumn
>
</
Columns
>
<
GroupByExpressions
>
<
telerik:GridGroupByExpression
>
<
GroupByFields
>
<
telerik:GridGroupByField
FieldName
=
"InvoiceId"
HeaderText
=
""
/>
</
GroupByFields
>
<
SelectFields
>
<
telerik:GridGroupByField
FieldName
=
"InvoiceId"
HeaderText
=
" "
HeaderValueSeparator
=
"Invoice # "
/>
<
telerik:GridGroupByField
FieldName
=
"TotalFee"
HeaderText
=
" "
HeaderValueSeparator
=
"Total: "
Aggregate
=
"Sum"
FormatString
=
"{0:C}"
/>
</
SelectFields
>
</
telerik:GridGroupByExpression
>
</
GroupByExpressions
>
</
MasterTableView
>
<
ClientSettings
AllowDragToGroup
=
"false"
/>
<
GroupingSettings
ShowUnGroupButton
=
"false"
/>
</
telerik:RadGrid
>
function confirmCallBackFn(arg) { |
return arg; |
} |
function OpenConfirm(customTitle) { |
return radconfirm('<h3><span style="color: #333399;">' + customTitle + '?</span></h3>', confirmCallBackFn, 330, 100, customTitle); |
return false; |
} |
<asp:Button ID="btnSave" runat="server" CommandArgument="PerformInsert" CssClass="ButtonStyle" |
Text="Insert" CommandName="PerformInsert" OnClientClick="javascript: if (OpenConfirm('Save Food Menu Item Editing')) {return true;}else{return false;}" /> |
Hi,
I have a RadGrid bound to WebAPI through RadClientDataSource. Grid is configured to fire the OnRowDataBound event on the client side. Pagination is set to TRUE and is configured to show 10 rows per page. The service returns 6 rows which bind the grid and on each row I bind a combobox inside that row with static data. (RadComboBox template column)
Issue - I presume the OnRowDataBound event must fire 6 times i.e. exactly equal to the number of rows bound to the grid, however its fired more than 6 times and hence the same dropdowns are appended with the data for all the extra times the rowbound event is called. I have to manually clear the items from the combo as a work-around.
This does not happen If I turn OFF pagination.
What am I missing here?
JavaScript - OnRowDataBound event
01.
<telerik:RadCodeBlock runat=
"server"
ID=
"RadCodeBlock1"
>
02.
<script>
03.
function
RowDataBound(sender, args) {
04.
var
cmbOType = args.get_item().findControl(
"cmbOpportunityType"
);
05.
Populate(cmbOType);
06.
};
07.
08.
function
Populate(cmb) {
09.
cmb.clearItems();
10.
var
otype = [
11.
{ Value:
"1"
, Text:
"AMAR"
},
12.
{ Value:
"2"
, Text:
"VDB"
},
13.
{ Value:
"3"
, Text:
"MLS"
}];
14.
15.
for
(
var
i = 0; i < otype.length; i++) {
16.
var
cmbItem =
new
Telerik.Web.UI.RadComboBoxItem();
17.
cmbItem.set_value(otype[i].Value);
18.
cmbItem.set_text(otype[i].Text);
19.
cmb.get_items().add(cmbItem);
20.
}
21.
};
22.
</script>
23.
</telerik:RadCodeBlock>
RadGrid
01.
<
telerik:RadGrid
AllowFilteringByColumn
=
"true"
02.
AllowSorting
=
"true"
AllowPaging
=
"true"
03.
runat
=
"server"
ID
=
"RadGrid1"
04.
PageSize
=
"10"
05.
AutoGenerateColumns
=
"false"
06.
ClientDataSourceID
=
"RadClientDataSource1"
>
07.
<
ClientSettings
>
08.
<
ClientEvents
OnRowDataBound
=
"RowDataBound"
/>
09.
</
ClientSettings
>
10.
<
MasterTableView
ClientDataKeyNames
=
"ID"
>
11.
<
Columns
>
12.
<
telerik:GridBoundColumn
13.
UniqueName
=
"ID"
14.
DataField
=
"ID"
15.
HeaderText
=
"ID"
16.
ReadOnly
=
"true"
/>
17.
<
telerik:GridTemplateColumn
UniqueName
=
"OpType"
AllowFiltering
=
"false"
HeaderText
=
"Opportunity Type"
>
18.
<
ItemTemplate
>
19.
<
telerik:RadComboBox
20.
runat
=
"server"
21.
ID
=
"cmbOpportunityType"
22.
OnClientSelectedIndexChanged
=
"OnClientItemSelected"
>
23.
</
telerik:RadComboBox
>
24.
</
ItemTemplate
>
25.
</
telerik:GridTemplateColumn
>
26.
27.
<
telerik:GridTemplateColumn
28.
UniqueName
=
"EstimatedValue"
29.
HeaderText
=
"Esitmated Value"
30.
AllowFiltering
=
"false"
>
31.
<
ItemTemplate
>
32.
<
telerik:RadNumericTextBox
33.
EnabledStyle-HorizontalAlign
=
"Right"
34.
runat
=
"server"
35.
ID
=
"tEstimateValue"
>
36.
</
telerik:RadNumericTextBox
>
37.
</
ItemTemplate
>
38.
</
telerik:GridTemplateColumn
>
39.
40.
<
telerik:GridTemplateColumn
UniqueName
=
"Name"
DataField
=
"Name"
AllowFiltering
=
"false"
>
41.
<
ItemTemplate
>
42.
<
telerik:RadTextBox
runat
=
"server"
ID
=
"tName"
></
telerik:RadTextBox
>
43.
</
ItemTemplate
>
44.
</
telerik:GridTemplateColumn
>
45.
46.
<
telerik:GridTemplateColumn
UniqueName
=
"Shipped"
DataField
=
"Shipped"
AllowFiltering
=
"false"
>
47.
<
ItemTemplate
>
48.
<
telerik:RadDatePicker
runat
=
"server"
ID
=
"tDatePicker"
></
telerik:RadDatePicker
>
49.
</
ItemTemplate
>
50.
</
telerik:GridTemplateColumn
>
51.
<
telerik:GridClientDeleteColumn
HeaderText
=
"Delete"
ButtonType
=
"ImageButton"
HeaderStyle-Width
=
"70px"
>
52.
</
telerik:GridClientDeleteColumn
>
53.
</
Columns
>
54.
</
MasterTableView
>
55.
</
telerik:RadGrid
>
56.
<
telerik:RadClientDataSource
runat
=
"server"
ID
=
"RadClientDataSource1"
>
57.
<
DataSource
>
58.
<
WebServiceDataSourceSettings
>
59.
<
Select
Url
=
"api/products"
RequestType
=
"Get"
/>
60.
</
WebServiceDataSourceSettings
>
61.
</
DataSource
>
62.
<
Schema
>
63.
<
Model
ID
=
"ID"
>
64.
<
telerik:ClientDataSourceModelField
FieldName
=
"ID"
DataType
=
"Number"
/>
65.
<
telerik:ClientDataSourceModelField
FieldName
=
"Name"
DataType
=
"String"
/>
66.
<
telerik:ClientDataSourceModelField
FieldName
=
"Shipped"
DataType
=
"Date"
/>
67.
</
Model
>
68.
</
Schema
>
69.
</
telerik:RadClientDataSource
>
Service returns 6 rows.
01.
products =
new
List<Product>(
new
Product[]
02.
{
03.
new
Product { ID = 1, Name =
"Product1"
, Category =
"Category1"
, Price = 1.05M,Shipped=DateTime.Now },
04.
new
Product { ID = 2, Name =
"Product2"
, Category =
"Category2"
, Price = 3.75M,Shipped=DateTime.Now },
05.
new
Product { ID = 3, Name =
"Product3"
, Category =
"Category2"
, Price = 2.34M,Shipped=DateTime.Now },
06.
new
Product { ID = 4, Name =
"Product4"
, Category =
"Category3"
, Price = 1.63M,Shipped=DateTime.Now },
07.
new
Product { ID = 5, Name =
"Product5"
, Category =
"Category4"
, Price = 5.62M,Shipped=DateTime.Now },
08.
new
Product { ID = 6, Name =
"Product6"
, Category =
"Category1"
, Price = 7.68M,Shipped=DateTime.Now },
09.
/*new Product { ID = 7, Name = "Product7", Category = "Category1", Price = 8.23M,Shipped=DateTime.Now },
10.
new Product { ID = 8, Name = "Product8", Category = "Category2", Price = 9.44M,Shipped=DateTime.Now },
11.
new Product { ID = 9, Name = "Product9", Category = "Category2", Price = 0.43M,Shipped=DateTime.Now },
12.
new Product { ID = 10, Name = "Product10", Category = "Category3", Price = 2.12M,Shipped=DateTime.Now },
13.
new Product { ID = 11, Name = "Product11", Category = "Category4", Price = 1.79M,Shipped=DateTime.Now },
14.
new Product { ID = 12, Name = "Product12", Category = "Category4", Price = 4.22M,Shipped=DateTime.Now } */
15.
});
** I have removed columns irrelevant to this issue.
Hello, I have a pivot grid with an aggregate field that holds an average of percentages in the form of 100.0000 etc.
I get numbers like 99.90356798455882352941176471
I've tried "{0:P}", "{0}N %" but nothing works. What can I do? Is it a bug? It's a telerik version from 2013.
PivotGridAggregateField aggregateField =
new
PivotGridAggregateField();
RadPivotGrid1.Fields.Add(aggregateField);
aggregateField.DataField =
"PercentOD"
;
aggregateField.UniqueName =
"PercentOD"
;
aggregateField.Aggregate = PivotGridAggregate.Average;
aggregateField.DataFormatString =
"{0:F2}"
;
aggregateField.TotalFormatString =
"{0:F2}"
;
Question 1: How can we reset the drill down level from the code-behind?
Question 2: How can always open to 2nd level (or perhaps 3rd level) from the code-behind?
Using Entity Framework, Models, DataAnnotation and ASP WebForms, you can leverage the asp 'DynamicControl' and 'DynamicField' controls, which refer back to the model declaration and reflect the proper formatting and validation rules without having to duplicate those values in the markup or code behind.
The article, http://www.asp.net/web-forms/overview/older-versions-getting-started/getting-started-with-ef/the-entity-framework-and-aspnet-getting-started-part-8, goes into detail on how to get this to work with the basic ASP gridview and dataform controls.
Attempting to apply this technique to the RadDataForm, a control that can be strongly typed, results in the error: "The DynamicControl/DynamicField needs to exist inside a data control that is bound to a data source that supports Dynamic Data."
Huh? The RadDataForm doesn't support Dynamic Data?
Google search is frustrating due to the search returns dominated by the topic of "Dynamic Control" instead of "DynamicControl", and searched on this forum came up empty.
How can I place a DynamicControl into the EditItemTemplate of a RadDataForm and benefit from the formatting and other annotations listed on the Model?
Thanks in advance for your assistance.
We've been using the RadEditor for years now. When we recently updated the Telerik controls to the 2015.3.1111.40 version we experienced a very significant slowdown in responsiveness. It became virtually un-useable due to the delay between a keystroke and the echo of that keystroke.
We were able to improve the situation somewhat by clearing the modules in our code-behind. The delay is still significant, more delay than before the update to the 2015.3.1111.40 version and not really acceptable to our users but at least they are able to edit documents now.
As another attempt to resolve this problem we tried updating again - to the 2016.1.113.40 version. That had no noticeable effect on the problem.
What do you suggest as a way to restore our use of the RadEditor to its previous responsiveness?
Here is the source from the web page where we define the RadEditor control:
<telerik:RadEditor ID="reContent" ContentAreaMode="Iframe" EditModes="Design,Preview" ToolbarMode="Default" ToolsFile="~/Telerik/ToolsFile.xml" ContentAreaCssFile="EditorContentArea.css" AutoResizeHeight="true" Width="100%" runat="server">
<ImageManager MaxUploadFileSize="1000000" EnableImageEditor="true" />
<SpellCheckSettings DictionaryPath="~/Telerik/RadSpell" AllowAddCustom="false" SpellCheckProvider="EditDistanceProvider" EditDistance="2" FragmentIgnoreOptions="All" WordIgnoreOptions="UPPERCASE,WordsWithNumbers" />
</telerik:RadEditor>
Here is the source from the code behind - from the Page Load sub - where we added code to clear the modules to help with performance.
reContent.ImageManager.ViewPaths = Split(ImageManagerURL)
reContent.ImageManager.UploadPaths = Split(ImageManagerURL)
reContent.ImageManager.DeletePaths = Split(ImageManagerURL)
reContent.Modules.Clear()
'-----------------------------
If so.Manage_Security Then
reContent.EditModes = Telerik.Web.UI.EditModes.All
End If