Hi,
I am implementing an application using RadGrid, where I am using the following features:
I have a large amount of data (approximately 50k entries) and I found out that SQL server needs a large amount of data in order to sort all the selected data.
As I support filtering, users will use this option to reach the needed item instead of loading them all and using the pager.
According to these facts my idea is to:
The only problem is, that I cannot find the event late enough to bind the client function that does the needed job. I tried with the “OnDataBound” but on that time the number of available hits is not yet available.
function
ModifyPagerInfo() {
var
hitsNo = $(
'.rgPagerCell .rgInfoPart strong span:first'
).html();
if
(1000 > hitsNo)
$(
'.rgPagerCell .rgInfoPart strong span:first'
).html(
'first '
+ hitsNo);
}
Does anyone knows if there is any event late enough in order to change the pager info.
Or there is any other possibility to reach the needed functionality?
Thank you,
Kristijan
foreach
(TreeListDataItem i
in
notificationsTree.Items)
{
string
test21 = i.Cells[3].Text.ToString();
}
<
asp:CheckBox
ID
=
"WidocznaCheckBox"
runat
=
"server"
Text
=
"Pokazuj w drzewie"
CssClass
=
"cbx"
Checked='<%#Bind("Widoczna") %>'></
asp:CheckBox
>
if ((e.CommandName == RadGrid.InitInsertCommandName))
{
e.Canceled = true;
//Prepare an IDictionary with the predefined values
ListDictionary newValues = new ListDictionary();
//set initial checked state for the checkbox on init insert
newValues["Widoczna"] = true
//Insert the item and rebind
e.Item.OwnerTableView.InsertItem(newValues);
}
protected void VerifyTreeTableButton_Click(object sender, EventArgs e)
{
string Message;
string TempMessage;
int StartPosition;
int EndPosition;
string Tier1;
string Tier2;
string Tier3;
string Tier4;
int IntDisabledChildNodes;
VerifyMessageLabel.Text = "<
br
/><
br
/>";
IList<
RadTreeNode
> AllNodes = RadTreeView1.GetAllNodes();
for (int i = 0; i <
AllNodes.Count
; i++)
{
RadTreeNode Node = (RadTreeNode)AllNodes[i];
if (Node.Attributes["Status"].ToString() == "Created")
{
if (!Node.HasControls() && Node.Attributes["SapProductCode"] == "NULL")
{
// Get the full path of the Node using &&& as a separator
Message
=
Node
.GetFullPath("&&&");
if (Message.Contains("&&&"))
{
StartPosition
=
Message
.IndexOf("&&&");
//
TempMessage
= Message.Substring(0, StartPosition);
Tier1 = "<b>Tier 1:</
b
> " + Message.Substring(0, StartPosition);
TempMessage = Message.Substring(StartPosition + 3);
VerifyMessageLabel.Text = VerifyMessageLabel.Text + Tier1;
if (TempMessage.Contains("&&&"))
{
StartPosition = TempMessage.IndexOf("&&&");
//TempMessage = TempMessage.Substring(0, StartPosition);
Tier2 = "<
b
>Tier 2:</
b
> " + TempMessage.Substring(0, StartPosition);
TempMessage = TempMessage.Substring(StartPosition + 3);
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier2;
if (TempMessage.Contains("&&&"))
{
StartPosition = TempMessage.IndexOf("&&&");
Tier3 = "<
b
>Tier 3: </
b
> " + TempMessage.Substring(0, StartPosition);
TempMessage = TempMessage.Substring(StartPosition + 3);
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier3;
if (TempMessage.Contains("&&&"))
{
StartPosition = TempMessage.IndexOf("&&&");
Tier4 = "<
b
>Tier 4: </
b
> " + TempMessage.Substring(0, StartPosition);
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier4;
}
else
{
Tier4 = "<
b
>Tier 4:</
b
> " + TempMessage;
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier4 + "<
hr
/>";
}
}
else
{
Tier3 = "<
b
>Tier 3:</
b
> " + TempMessage;
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier3 + "<
hr
/>";
}
}
else
{
Tier2 = "<
b
>Tier 2:</
b
> " + TempMessage;
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier2 + "<
hr
/>";
}
}
else
{
Tier1 = "<
b
>Tier 1:</
b
> " + Node.Text;
VerifyMessageLabel.Text = VerifyMessageLabel.Text + Tier1 + "<
hr
/>";
}
//VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>";
}
}
if (Node.Attributes["Status"].ToString() == "Disabled & Modified")
{
IntDisabledChildNodes = 0;
if (Node.Level > 0)
{
if (Node.Parent.Controls.Count >= 1)
{
foreach (RadTreeNode node in Node.ParentNode.Nodes)
{
if (node.Attributes["Status"] == "Disabled & Modified")
{
IntDisabledChildNodes = IntDisabledChildNodes + 1;
}
}
}
// If the number of Disabled Child nodes are equal to the count
// of the parent's child nodes, then this means that all child nodes
// are disabled and therefore we need to flag the parent node
if (IntDisabledChildNodes >= Node.Parent.Controls.Count)
{
// Get the full path of the Node using &&& as a separator
Message = Node.GetFullPath("&&&");
if (Message.Contains("&&&"))
{
StartPosition = Message.IndexOf("&&&");
//TempMessage = Message.Substring(0, StartPosition);
Tier1 = "<
b
>Tier 1:</
b
> " + Message.Substring(0, StartPosition);
TempMessage = Message.Substring(StartPosition + 3);
VerifyMessageLabel.Text = VerifyMessageLabel.Text + Tier1;
if (TempMessage.Contains("&&&"))
{
StartPosition = TempMessage.IndexOf("&&&");
//TempMessage = TempMessage.Substring(0, StartPosition);
Tier2 = "<
b
>Tier 2:</
b
> " + TempMessage.Substring(0, StartPosition);
TempMessage = TempMessage.Substring(StartPosition + 3);
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier2;
if (TempMessage.Contains("&&&"))
{
StartPosition = TempMessage.IndexOf("&&&");
Tier3 = "<
b
>Tier 3: </
b
> " + TempMessage.Substring(0, StartPosition);
TempMessage = TempMessage.Substring(StartPosition + 3);
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier3;
if (TempMessage.Contains("&&&"))
{
StartPosition = TempMessage.IndexOf("&&&");
Tier4 = "<
b
>Tier 4: </
b
> " + TempMessage.Substring(0, StartPosition);
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier4;
}
else
{
Tier4 = "<
b
>Tier 4:</
b
> " + TempMessage;
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier4 + "<
hr
/>";
}
}
else
{
Tier3 = "<
b
>Tier 3:</
b
> " + TempMessage;
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier3 + "<
hr
/>";
}
}
else
{
Tier2 = "<
b
>Tier 2:</
b
> " + TempMessage;
VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>" + Tier2 + "<
hr
/>";
}
}
else
{
Tier1 = "<
b
>Tier 1:</
b
> " + Node.Text;
VerifyMessageLabel.Text = VerifyMessageLabel.Text + Tier1 + "<
hr
/>";
}
//VerifyMessageLabel.Text = VerifyMessageLabel.Text + "<
br
/>";
}
}
}
}
if (VerifyMessageLabel.Text != "<
br
/><
br
/>")
{
VerifyErrorMessage.Visible = true;
VerifyErrorMessage.Text = @"There are some nodes which have no children and have no Product / Contract / Function Location. Or they are disabled and their
parent nodes have no other non-disabled children.
Please correct these and reverify";
VerifyCancelButton.Visible = false;
ModalPopupExtender2.Show();
}
else
{
VerifyErrorMessage.Visible = true;
VerifyErrorMessage.Text = @"All nodes verified successfully. Do you want to submit these changes to the database?";
VerifyCancelButton.Visible = true;
ModalPopupExtender2.Show();
}
}
var item = panelBar.findItemByText(text); if (item) {
item.expand();
}
<%@ Page Title="" Language="C#" MasterPageFile="~/DWL.Master" AutoEventWireup="true"
CodeBehind="UserList.aspx.cs" Inherits="DWL_WebApplication.UserList" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"HeadContent"
runat
=
"server"
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"ContentPlaceHolder1"
runat
=
"server"
>
<
html
>
<
head
>
<
title
></
title
>
</
head
>
<
body
style
=
"width:100%; height:100%; background-color:#666666;"
>
<
div
id
=
"wrapper"
class
=
"grid"
style
=
"background-color:#F0F2F4 !important; padding-bottom:30%; margin-top:-55px; padding-left:3px; width:100%; height: 100%;"
>
<
form
id
=
"Form1"
action
=
""
>
<
telerik:RadScriptManager
ID
=
"RadScriptManager1"
runat
=
"server"
>
</
telerik:RadScriptManager
>
<
div
style
=
"margin-left:14px; margin-right:14px; "
>
<
telerik:RadGrid
ID
=
"RadGridUserList"
runat
=
"server"
AllowPaging
=
"True"
AllowSorting
=
"True"
AutoGenerateColumns
=
"False"
GridLines
=
"None"
AllowMultiRowSelection
=
"True"
AllowAutomaticInserts
=
"True"
AllowAutomaticUpdates
=
"True"
AllowAutomaticDeletes
=
"True"
Width
=
"998px"
CssClass
=
"gridHeightSet"
OnItemDataBound
=
"radGridUser_ItemDataBound"
GroupingSettings-CaseSensitive
=
"false"
PageSize
=
"20"
OnItemCommand
=
"radGridUserList_ItemCommand"
OnInit
=
"radGridUserList_OnInit"
OnNeedDataSource
=
"RadGridUserList_NeedDataSource"
>
<
HeaderContextMenu
>
</
HeaderContextMenu
>
<
PagerStyle
AlwaysVisible
=
"True"
/>
<
MasterTableView
CommandItemDisplay
=
"Top"
AllowAutomaticDeletes
=
"False"
AllowAutomaticInserts
=
"False"
AllowAutomaticUpdates
=
"False"
AllowFilteringByColumn
=
"True"
FilterItemStyle-Height
=
"10px"
HeaderStyle-CssClass
=
"gridcloumnHeader"
HeaderStyle-Height
=
"35px"
FilterItemStyle-Width
=
"100%"
>
<
CommandItemTemplate
>
</
CommandItemTemplate
>
<
RowIndicatorColumn
FilterControlAltText
=
"Filter RowIndicator column"
>
</
RowIndicatorColumn
>
<
ExpandCollapseColumn
FilterControlAltText
=
"Filter ExpandColumn column"
>
</
ExpandCollapseColumn
>
<
AlternatingItemStyle
BackColor
=
"#EDF1F3"
/>
<
Columns
>
<
telerik:GridTemplateColumn
AllowFiltering
=
"False"
>
<
HeaderStyle
CssClass
=
"gridcloumnHeader gridHAlign"
HorizontalAlign
=
"Left"
ForeColor
=
"White"
/><
ItemStyle
HorizontalAlign
=
"Left"
/>
<
HeaderTemplate
>
<
asp:Label
ID
=
"lblHeaderAction"
runat
=
"server"
Text
=
"Action"
CssClass
=
"gridHAlign"
></
asp:Label
>
</
HeaderTemplate
>
<
ItemTemplate
>
<
asp:Panel
ID
=
"editButtonPanel"
runat
=
"server"
Width
=
"60px"
>
<
asp:ImageButton
ID
=
"editUserButton"
runat
=
"server"
OnClick
=
"editUser_Click"
Height
=
"16px"
Width
=
"19px"
ToolTip
=
"Edit"
CausesValidation
=
"False"
/>
<
img
alt
=
""
src
=
"images/menu_border-action.gif"
/>
<
asp:ImageButton
ID
=
"deleteUserButton"
runat
=
"server"
OnClick
=
"deleteUser"
Height
=
"16px"
Width
=
"14px"
ToolTip
=
"Delete"
CausesValidation
=
"False"
/>
</
asp:Panel
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserID"
UniqueName
=
"columnUserId"
Visible
=
"false"
>
<
HeaderStyle
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserName"
UniqueName
=
"columnUserName"
FilterControlAltText
=
"Filter columnUserName column"
HeaderText
=
"Username"
HeaderTooltip
=
"Username"
FilterControlWidth
=
"70%"
ItemStyle-HorizontalAlign
=
"Center"
>
<
HeaderStyle
CssClass
=
"gridcloumnHeader gridHAlign"
HorizontalAlign
=
"Left"
ForeColor
=
"White"
/><
ItemStyle
HorizontalAlign
=
"Left"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"IsActive"
AllowFiltering
=
"false"
AllowSorting
=
"true"
FilterControlAltText
=
"Filter columnCategory column"
HeaderText
=
"Status"
HeaderTooltip
=
"Status"
UniqueName
=
"columnUserStatus"
Visible
=
"true"
>
<
HeaderStyle
CssClass
=
"gridcloumnHeader gridHAlign"
HorizontalAlign
=
"Left"
ForeColor
=
"White"
/><
ItemStyle
HorizontalAlign
=
"Left"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserFullName"
FilterControlAltText
=
"Filter columnDetails column"
HeaderText
=
"Full Name"
HeaderTooltip
=
"Full Name"
UniqueName
=
"columnUserFullName"
ItemStyle-HorizontalAlign
=
"Center"
FilterControlWidth
=
"70%"
>
<
HeaderStyle
CssClass
=
"gridcloumnHeader gridHAlign"
ForeColor
=
"White"
HorizontalAlign
=
"Left"
Width
=
"200px"
Height
=
"15px"
/>
<
ItemStyle
HorizontalAlign
=
"Left"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"RoleCode"
FilterControlAltText
=
"Filter columnUserRole column"
HeaderText
=
"Role"
HeaderTooltip
=
"Role"
AllowFiltering
=
"false"
UniqueName
=
"columnRole"
>
<
HeaderStyle
CssClass
=
"gridcloumnHeader gridHAlign"
HorizontalAlign
=
"Left"
ForeColor
=
"White"
/>
<
ItemStyle
HorizontalAlign
=
"Left"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"UserEmail"
FilterControlAltText
=
"Filter columnAssignedTo column"
HeaderText
=
"Email address"
HeaderTooltip
=
"Email address"
AllowFiltering
=
"false"
UniqueName
=
"columnEmailaddress"
FilterControlWidth
=
"70%"
>
<
HeaderStyle
CssClass
=
"gridcloumnHeader gridHAlign"
HorizontalAlign
=
"Left"
ForeColor
=
"White"
Width
=
"200px"
Height
=
"15px"
/>
<
ItemStyle
HorizontalAlign
=
"Left"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"ClientName"
FilterControlAltText
=
"Filter columnCompany By column"
HeaderText
=
"Company"
HeaderTooltip
=
"Company"
UniqueName
=
"columnCompany"
AllowFiltering
=
"false"
FilterControlWidth
=
"70%"
>
<
HeaderStyle
CssClass
=
"gridcloumnHeader gridHAlign"
HorizontalAlign
=
"Left"
ForeColor
=
"White"
Width
=
"200px"
Height
=
"15px"
/>
<
ItemStyle
HorizontalAlign
=
"Left"
/>
</
telerik:GridBoundColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
div
>
</
form
>
</
div
>
</
body
>
</
html
>
</
asp:Content
>
<
asp:Content
ID
=
"Content3"
ContentPlaceHolderID
=
"ContentPlaceHolder2"
runat
=
"server"
>
</
asp:Content
>