public override DirectoryItem ResolveRootDirectoryAsTree(string path){ DirectoryItem directory = null; if (path.Equals("ROOT/TE")) { directory = new DirectoryItem("File Explorer", "ROOT/TE", "ROOT/TE", "ROOT/TE", PathPermissions.Read, null, null); List<DirectoryItem> subDirs = new List<DirectoryItem>(); subDirs.Add(new DirectoryItem("My Labels", string.Empty, "ROOT/TE/TL-1", "TL-1", PathPermissions.Read, null, null)); subDirs.Add(new DirectoryItem("Recent Documents", string.Empty, "ROOT/TE/TL-2", "TL-2", PathPermissions.Read, null, null)); subDirs.Add(new DirectoryItem("Recent Folders", string.Empty, "ROOT/TE/TL-3", "TL-3", PathPermissions.Read, null, null)); directory.Directories = subDirs.ToArray(); if (directory.Directories != null) { foreach (DirectoryItem dir in directory.Directories) { dir.Permissions = GetPermissions(path); } } return directory; } else { return directory; } }public override DirectoryItem ResolveDirectory(string path){ DirectoryItem directory = dataServer.GetDirectoryItem(path, true, true); if (directory == null) return null; return directory;}public DirectoryItem GetDirectoryItem(string path, bool bIncludeSubfolders, bool bIncludeFiles){ DirectoryItem diDirectory = null; MyObject item = this.GetObjectFromPath(path); if (item != null ) { if (item.sType.Equals("TL")) { diDirectory = LoadSubNode(item, path, bIncludeSubfolders, bIncludeFiles); } else if (item.sType.Equals("C")) { //diDirectory = CreateDirectoryItem(item, true); } else if (item.sType.Equals("FP")) { //diDirectory = CreateDirectoryItem(item, true); } else if (item.sType.Equals("UL")) { //diDirectory = CreateDirectoryItem(item, true); } } return diDirectory; //return (item != null && item.sType.Equals("C")) ? this.CreateDirectoryItem(item, includeSubfolders) : null;}private DirectoryItem LoadSubNode(MyObject ktoItem, string sPath, bool bIncludeSubFolders, bool bIncludeFiles) { DirectoryItem diDirectory = null; if (ktoItem.sUri.Equals("2")) { diDirectory = GetTopLevel_RecentDocuments(sPath, bIncludeFiles); } else if (ktoItem.sUri.Equals("3")) { diDirectory = GetTopLevel_RecentContainers(sPath, bIncludeSubFolders, bIncludeFiles); } return diDirectory;}private DirectoryItem GetTopLevel_RecentDocuments(string sPath, bool bIncludeFiles) { DirectoryItem diDirectory = new DirectoryItem("Recent Documents", sPath, sPath, "TL-2", PathPermissions.Read, null, null); if (bIncludeFiles) { diDirectory.Files = LoadRecentDocuments(sPath); } return diDirectory;}private DirectoryItem GetTopLevel_RecentContainers(string sPath, bool bIncludeSubFolders, bool bIncludeFiles){ DirectoryItem diDirectory = null; diDirectory = new DirectoryItem("Recent Containers", sPath, sPath, "TL-3", PathPermissions.Read, null, null); SomeSDK.Records tRecords = tDatabase.MakeRecords(); tRecords.SearchString = "myContainers"; SomeSDK.Record tRecord = null; List<DirectoryItem> diFolders = new List<DirectoryItem>(); while ((tRecord = tRecords.Next()) != null) { string sItemPath = GetValidPath(sPath) + "C-" + tRecord.Uri.ToString(); DirectoryItem diSubItem = new DirectoryItem(tRecord.Title + " (" + tRecord.Number + ")", sItemPath, sItemPath, sItemPath, PathPermissions.Read, null, null); diSubItem.Files = (new List<FileItem>()).ToArray(); diSubItem.Directories = (new List<DirectoryItem>()).ToArray(); //diFolders.Add(new DirectoryItem(tRecord.Title + " (" + tRecord.Number + ")", sItemPath, sItemPath, sItemPath, PathPermissions.Read, null, null)); diFolders.Add(diSubItem); //diFolders.Add(new DirectoryItem("test", string.Empty, sPath + "/1", "1", PathPermissions.Read, null, null)); } diDirectory.Directories = diFolders.ToArray(); List<FileItem> fiDocuments = new List<FileItem>(); diDirectory.Files = fiDocuments.ToArray(); return diDirectory;}private FileItem[] LoadRecentDocuments(string sPath){ SomeSDK.Records tRecords = tDatabase.MakeRecords(); tRecords.SearchString = "myDocuments"; SomeSDK.Record tRecord = null; List<FileItem> fiDocuments = new List<FileItem>(); while ((tRecord = tRecords.Next()) != null) { string sItemPath = GetValidPath(sPath) + "D-" + tRecord.Uri.ToString(); fiDocuments.Add(new FileItem(tRecord.Title + " (" + tRecord.Number + ")", tRecord.Extension, tRecord.DocumentSize, sItemPath, sItemPath, tRecord.Number, PathPermissions.Read)); } return fiDocuments.ToArray();}private string GetValidPath(string sInputPath){ if (!sInputPath.EndsWith("/")) { return sInputPath + "/"; } else { return sInputPath; }}
<script type="text/javascript">
RadEditorCommandList[
try {
if (editor.getSelectionHtml() != "") {
var style = editor.get_contentArea().style;
style.color = oTool.value;
if (ajaxManager == null)
ajaxManager = $find("<%= RadAjaxManager1.ClientID %>");
if (ajaxManager != null)
ajaxManager.ajaxRequest(commandName);
}
else {
alert("Please, select some text!");
args.set_cancel(true);
}
}
catch (err)
{ }
}

Hi,
I am trying to get the telerik hierachy grid to work. I got the grid row to show up when the grid is loaded. When I click on the arrow to expand the first row, the row expands. I see the two tab page and the first tab grid data is loaded. However when I click on the 2nd tab, nothing happens. when I clicked the 2nd or 3rd row, it is not expand. It just display a blank line.
Any help is greatly appreciated.
JC
<
telerik:RadGrid ID="rgdSubmitterMatrix" runat="server" AllowSorting="True" AllowPaging="True" AutoGenerateColumns="False" DataSourceID="odsSubmitterNotice" GridLines="None" OnItemDataBound="rgdSubmitterMatrix_ItemDataBound" OnPreRender="Page_Load" ShowGroupPanel="True" Skin="Outlook" >
<PagerStyle Mode="NumericPages" />
<mastertableview allowmulticolumnsorting="True" datasourceid="odsSubmitterNotice" GroupLoadMode="server">
<NestedViewTemplate>
<asp:Panel runat="server" ID="InnerContainer" CssClass="viewWrap" Visible="false">
<telerik:RadTabStrip runat="server" ID="rtsSubmitterMatrix" MultiPageID="rmpSubmitterMatrix" SelectedIndex="0">
<Tabs>
<telerik:RadTab runat="server" Text="Submitter Response" PageViewID="rpvSubmitterResponse">
</telerik:RadTab>
<telerik:RadTab runat="server" Text="Determination Notice" PageViewID="rpvDeterminationNotice">
</telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
<telerik:RadMultiPage runat="server" ID="rmpSubmitterNotice" SelectedIndex="0" RenderSelectedPageOnly="false">
<telerik:RadPageView runat="server" ID="rpvSubmitterResponse">
<asp:Label ID="lblSubmitterResponse" Font-Bold="true" Font-Italic="true" Text="Submitter Response"
Visible="false" runat="server"></asp:Label>
<telerik:RadGrid runat="server" ID="rgdSubmitterNotice" DataSourceID="odsSubmitterResponse" ShowFooter="true"
AllowSorting="true" EnableLinqExpressions="false">
<MasterTableView ShowHeader="true" AutoGenerateColumns="false" AllowPaging="true"
DataKeyNames="FAC_RECORD_UID" PageSize="10" HierarchyLoadMode="ServerOnDemand">
<Columns>
<telerik:GridBoundColumn SortExpression="FAC_RECORD_UID" HeaderText="OASIS #" HeaderButtonType="TextButton" DataField="FAC_RECORD_UID" UniqueName="FAC_RECORD_UID">
</telerik:GridBoundColumn>
<telerik:GridDateTimeColumn SortExpression="DATE_RECEIVED" HeaderText="Received Date" HeaderButtonType="TextButton"
DataField="DATE_RECEIVED" UniqueName="DATE_RECEIVED" DataFormatString="{0:MM/dd/yyyy}">
</telerik:GridDateTimeColumn>
<telerik:GridBoundColumn SortExpression="RESPONSE_VALUE" HeaderText="Response" HeaderButtonType="TextButton" DataField="RESPONSE_VALUE" UniqueName="RESPONSE_VALUE">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</telerik:RadPageView>
<telerik:RadPageView runat="server" ID="rpvDeterminationNotice">
<asp:Label ID="lblDeterminationNotice" Font-Bold="true" Font-Italic="true" Text="Determination Notice"
Visible="false" runat="server"></asp:Label>
<telerik:RadGrid runat="server" ID="rgdDeterminationNotice" DataSourceID="odsDeterminationNotice" ShowFooter="true"
AllowSorting="true" EnableLinqExpressions="false">
<MasterTableView ShowHeader="true" AutoGenerateColumns="false" AllowPaging="true"
DataKeyNames="FAC_RECORD_UID" PageSize="10" HierarchyLoadMode="ServerOnDemand">
<Columns>
<telerik:GridBoundColumn SortExpression="FAC_RECORD_UID" HeaderText="OASIS #" HeaderButtonType="TextButton" DataField="FAC_RECORD_UID" UniqueName="FAC_RECORD_UID">
</telerik:GridBoundColumn>
<telerik:GridDateTimeColumn SortExpression="DATE_SENT" HeaderText="Date Sent" HeaderButtonType="TextButton"
DataField="DATE_SENT" UniqueName="DATE_SENT" DataFormatString="{0:MM/dd/yyyy}">
</telerik:GridDateTimeColumn>
<telerik:GridDateTimeColumn SortExpression="DOCUMENT_RELEASE_DATE" HeaderText="Document Release Date" HeaderButtonType="TextButton"
DataField="DOCUMENT_RELEASE_DATE" UniqueName="DOCUMENT_RELEASE_DATE" DataFormatString="{0:MM/dd/yyyy}">
</telerik:GridDateTimeColumn>
<telerik:GridBoundColumn SortExpression="REMARKS" HeaderText="Remarks" HeaderButtonType="TextButton" DataField="REMARKS" UniqueName="REMARKS">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</telerik:RadPageView>
</telerik:RadMultiPage>
</asp:Panel>
</NestedViewTemplate>
<Columns>
<telerik:GridBoundColumn SortExpression="OASIS_NUMBER" HeaderText="Submitter Notice OASIS #" HeaderButtonType="TextButton" DataField="OASIS_NUMBER" UniqueName="OASIS_NUMBER">
</telerik:GridBoundColumn>
<telerik:GridDateTimeColumn SortExpression="DATE_SENT" HeaderText="Submitter Notice Date Sent" HeaderButtonType="TextButton" DataField="DATE_SENT" UniqueName="DATE_SENT" DataFormatString="{0:MM/dd/yyyy}">
</telerik:GridDateTimeColumn>
<telerik:GridDateTimeColumn SortExpression="DATE_DUE" HeaderText="Submitter Notice Date Due" HeaderButtonType="TextButton" DataField="DATE_DUE" UniqueName="DATE_DUE" DataFormatString="{0:MM/dd/yyyy}">
</telerik:GridDateTimeColumn>
</Columns>
</mastertableview>
<clientsettings allowdragtogroup="False">
<Scrolling AllowScroll="True" UseStaticHeaders="True" />
</clientsettings>
<headercontextmenu enableautoscroll="True">
</headercontextmenu>
</telerik:RadGrid>
public
partial class SubmitterMatrix : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
if (rgdSubmitterMatrix.MasterTableView.Items.Count > 0)
{
rgdSubmitterMatrix.MasterTableView.Items[0].Expanded =
true;
rgdSubmitterMatrix.MasterTableView.Items[0].ChildItem.FindControl(
"InnerContainer").Visible = true;
}
}
protected void rgdSubmitterMatrix_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
}
protected void rgdSubmitterMatrix_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
{
}
protected void rgdSubmitterMatrix_ItemCommand(object source, Telerik.Web.UI.GridCommandEventArgs e)
{
if (e.CommandName == RadGrid.ExpandCollapseCommandName && e.Item is GridDataItem)
{
((GridDataItem)e.Item).ChildItem.FindControl("InnerContainer").Visible = !e.Item.Expanded;
}
}
protected void rgdSubmitterMatrix_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item is GridNestedViewItem)
{
e.Item.FindControl("InnerContainer").Visible = ((GridNestedViewItem)e.Item).ParentItem.Expanded;
}
}
protected void odsSubmitterNotice_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
}
protected void odsSubmitterNotice_Selected(object sender, ObjectDataSourceStatusEventArgs e)
{
}
protected void odsSubmitterResponse_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
}
protected void odsDeterminationNotice_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
}


hi

In the GroupFooterTemplate, I used several <td></td> together with labels to show the footer items. I have to use GroupFooterTemplate because a checkbox must be displayed in one of the footer columns.
The issue occured, when I used Aggregate="Custom" as follows
<telerik:GridBoundColumn UniqueName="OrderNo" DataField="OrderNo" HeaderText="Order No." Aggregate="Custom" />
The error message that I got is as follows:
An entry with the same key already exists.
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. |
|
