
protected
void grdGlossary_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridPagerItem)
{
GridPagerItem pagerItem = (e.Item as GridPagerItem);
pagerItem.PagerContentCell.Controls.Clear();
for (int i = 65; i < 65 + 25; i++)
{
LinkButton linkButton1 = new LinkButton();
LiteralControl lc = new LiteralControl(" ");
linkButton1.Text = "" + (char)i;
linkButton1.CommandName = "alpha";
linkButton1.CommandArgument = "" + (char)i;
pagerItem.PagerContentCell.Controls.Add(linkButton1);
pagerItem.PagerContentCell.Controls.Add(lc);
}
LiteralControl lcLast = new LiteralControl(" ");
pagerItem.PagerContentCell.Controls.Add(lcLast);
LinkButton linkButtonAll = new LinkButton();
linkButtonAll.Text = "All";
linkButtonAll.CommandName = "NoFilter";
pagerItem.PagerContentCell.Controls.Add(linkButtonAll);
}
}
protected void grdGlossary_ItemCommand(object source, Telerik.Web.UI.GridCommandEventArgs e)
{
String value = null;
switch (e.CommandName)
{
case ("alpha"):
{
value =
string.Format("{0}%", e.CommandArgument);
break;
}
case ("NoFilter"):
{
value =
"%";
break;
}
}
sqlGlossary.SelectParameters[
"PageLetter"].DefaultValue = value;
grdGlossary.Rebind();
}
[code]
[code]
<
telerik:RadGrid ID="grdGlossary" runat="server" AllowPaging="True" DataSourceID="sqlGlossary"
GridLines="None" OnItemCommand="grdGlossary_ItemCommand" OnItemCreated="grdGlossary_ItemCreated"
PageSize="20" Skin="Vista">
<PagerStyle AlwaysVisible="True" Mode="NextPrevAndNumeric" />
<MasterTableView AutoGenerateColumns="False" DataKeyNames="ID" DataSourceID="sqlGlossary"
GridLines="None">
<RowIndicatorColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</RowIndicatorColumn>
<ExpandCollapseColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</ExpandCollapseColumn>
<Columns>
<telerik:GridBoundColumn DataField="Term" HeaderText="Term" SortExpression="Term"
UniqueName="Term">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Definition" HeaderText="Definition" SortExpression="Definition"
UniqueName="Definition">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
<FilterMenu EnableTheming="True">
<CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation>
</FilterMenu>
</telerik:RadGrid>
<asp:Label ID="lblGlossaryFilter" runat="server" Visible="false" Text="%"></asp:Label>
<asp:SqlDataSource ID="sqlGlossary" runat="server" ConnectionString="<%$ ConnectionStrings:XX %>"
SelectCommand="GetGlossaryAll" SelectCommandType="StoredProcedure">
<SelectParameters>
<asp:Parameter Name="PageLetter" DefaultValue="%" />
</SelectParameters>
<SelectParameters>
</asp:SqlDataSource>
[/code]
The initial page with "A" selected loads fine. However, when I click on any of the other page letters the grid does not rebind. Any ideas?


I’ve got a RadTreeView with checkboxes. The tree has a total of 167 nodes. A single parent node owns about 30 child nodes and each of the children has one or more children. The deepest node in the tree is only 3 levels deep. The RadTreeView is setup with,
CheckChildNodes="true"
TriStateCheckBoxes="true"
When I “check” the single parent node it takes about 4-5 seconds for all the other nodes in the tree to become checked. While the user is waiting there is no feedback that the system is working so users often clicks multiple times causing further delay and annoyance with the application.
Is there some method for giving the user feedback that the system is working?
Is there some method for ignoring clicks on the RadTreeView while the system is working?