Hello! I'm working on creation custom plug-in on ASP.NET for eB Web.This plug-in should show a hierarchy of some types of elements in our company. So, we have some presentations about Navigator Types in your system, and we used class which implements IPagedDataSource to get data of our tree. We tried to display the tree, but stacked into a problem. Here is a code of class for tree displaying.
public partial class VNPNavigatorTest : ActivityUserControl { protected void Page_Load( object sender, EventArgs e ) { treeControl.PagedDataSource = new CustomPagedDataSource(); treeControl.HasRootCheckBox = true; } } public class CustomPagedDataSource : IPagedDataSource { private const int ProjectsFolderId = -1; eB.Data.Object IPagedDataSource.GetContainer( eBContext context ) { HttpContext.Current.Response.Write("<script> alert(\"Container\");</script>"); return new eB.Data.Object(context.eBSession, ProjectsFolderId, ObjectType.Folder) { Label = "Objects" }; } PagedTreeNodeDataList IPagedDataSource.GetPage( eBContext context, string parentId, int offset, int size ) { PagedTreeNodeDataList list = new PagedTreeNodeDataList(); var session = context.eBSession; var objectInfo = new ObjectInfoPair(parentId); if (objectInfo.t == ObjectType.Folder) { list.Add(new PagedTreeNodeData { Id = new ObjectInfoPair(0, ObjectType.Folder).ToString(), Label = "111", Type = (int)ObjectType.Folder, Flags = 0 }); } HttpContext.Current.Response.Write("<script> alert(\"Children\");</script>"); return list; } }
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="VNPNavigatorTest.ascx.cs" Inherits="VNPTest.VNPNavigatorTest" %> <%@ Register TagPrefix="eB" Namespace="eB.Web.UI.Controls.Tree" Assembly="eB.Library.Web" %> <div class="treePanel"> <eB:PagedTreeControl runat="server" ID="treeControl" ImageUriTemplate="~/Framework/Images/Objects/t{Type}f{Flags}.gif" LinkUriTemplate="javascript:OnTreeNodeClicked('{Id}')" LinkUriTarget="" /> </div>
<?xml version="1.0"?> <eBPlugIn id="VNPTest" helpUri="~/PlugIns/VNPTest/Help" resources="VNPTest.Properties.Resources,VNPTest" > <Types> <Type id="NavigationProvider" type="eB.Web.Core.Elements.Navigation.NavigationProvider,eB.Library.Web"/> <Type id="SearchProvider" type="eB.Web.Core.Elements.Searching.SearchProvider,eB.Library.Web"/> <Type id="WebControlNavigationProvider" type="eB.Web.Core.Elements.Navigation.WebControlNavigationProvider,eB.Library.Web"/> <Type id="WebSearchProvider" type="eB.Web.Core.Elements.Searching.WebControlSearchProvider,eB.Library.Web"/> <Type id="TreeNavigationProvider" type="eB.Web.Core.Elements.Navigation.TreeNavigationProvider,eB.Library.Web"/> </Types> <Objects /> <Services> <NavigationProvider> <WebControlNavigationProvider Id="Тестовое дерево объектов" ASCX="/PlugIns/VNPTest/VNPNavigatorTest.ascx" /> <!--<TreeNavigationProvider id="VNPTestNavigation" RootID="testTreeNavigator" ExplodeUri="/Plugins/VNPTest/VNPNavigatorTest.aspx" HomePageUri="" ImageUri="/Framework/Images" />--> </NavigationProvider> <SearchProvider> <WebSearchProvider Id="Поиск элементов ВНП" TargetObjectType="Document" VisibleToUser="true" ASCX="/PlugIns/VNPTest/MySearch.ascx" AdvancedSearchURI="/PlugIns/Reporting/ReportWizard.aspx?for=94"/> </SearchProvider> </Services> </eBPlugIn>