This is a migrated thread and some comments may be shown as answers.

[Solved] Radtreeview inside a datalist.

3 Answers 144 Views
TreeView
This is a migrated thread and some comments may be shown as answers.
Jefferson
Top achievements
Rank 1
Jefferson asked on 24 Jan 2008, 02:16 PM

Hi, I'm trying to have various treeviews inside a datalist, but i have problems to register the with the RadTreeViewContextMenuEventHandler,  I'm using findcontrol to find the radtreeview inside the datalist, but i need to register in the treeview the RadTreeViewContextMenuEventHandler to manage events inside the contextmenu, I tried to do it, but it doesn't work , when i clicked inside an item all data is lost in the postback, do you know a way to do that?... here is the .cs  and aspx code:

foreach (DataListItem item in dtlProcesosValor.Items)

{

Procesos procesoPadreAnexar = listaProcesosPadreValor[i];

Telerik.Web.UI.

RadTreeView trvProcesosValor1 = (RadTreeView)item.FindControl("trvProcesosValor");

IList<Procesos> procesoshijos = this._presenter.ListarHijos(procesoPadreAnexar);

// procesoshijos.Add(procesoPadreAnexar);

DataTable dtProcesos = _presenter.ListaProcesosADataTable(procesoshijos);

trvProcesosValor1.DataSource = dtProcesos;

 

trvProcesosValor1.DataFieldID =

"IdProceso";

trvProcesosValor1.DataTextField =

"Nombre";

trvProcesosValor1.DataValueField =

"IdProceso";

trvProcesosValor1.DataFieldParentID =

"IdPadre";

trvProcesosValor1.DataBind();

trvProcesosValor1.ContextMenuItemClick +=

new RadTreeViewContextMenuEventHandler(trvProcesosValor1_ContextMenuItemClick);

//RadTreeViewContextMenu mnu = (RadTreeViewContextMenu) trvProcesosValor1.FindControl("MainContextMenu");

// mnu.Items.Add(new RadMenuItem("hola"));

// RadTreeViewContextMenuEventHandler manejo = new RadTreeViewContextMenuEventHandler(RadTreeView1_ContextMenuItemClick);

// mnu.ItemClick += manejo;

 

// mnu.i += new (mnu_ItemClick);

i++;

}


<asp:DataList ID="dtlProcesosValor" runat="server" RepeatDirection="Horizontal" RepeatColumns="3"

ItemStyle-CssClass="treeSoporte" >

<ItemTemplate>

<telerik:RadTreeView ID="trvProcesosValor" runat="server"

OnContextMenuItemClick="RadTreeView1_ContextMenuItemClick" DataFieldID="IdProceso" DataFieldParentID="IdPadre" DataTextField="Nombre" DataValueField="IdProceso" >

<ContextMenus >

<telerik:RadTreeViewContextMenu ID="MainContextMenu" runat="server" Skin="Outlook" >

<Items >

<telerik:RadMenuItem Value="Editar" Text="Editar" PostBack="true" ></telerik:RadMenuItem>

<telerik:RadMenuItem Value="Eliminar" Text="Eliminar" PostBack="true" ></telerik:RadMenuItem>

<telerik:RadMenuItem Value="Detalle" Text="Detalle" PostBack="true"></telerik:RadMenuItem>

<telerik:RadMenuItem Value="Ver Diagrama" Text="Ver Diagrama" PostBack="true"></telerik:RadMenuItem>

<telerik:RadMenuItem Value="Eliminar Diagrama" Text="Eliminar Diagrama" PostBack="true" ></telerik:RadMenuItem>

</Items>

</telerik:RadTreeViewContextMenu>

</ContextMenus>

</telerik:RadTreeView>

</ItemTemplate>

</asp:DataList>



3 Answers, 1 is accepted

Sort by
0
Atanas Korchev
Telerik team
answered on 24 Jan 2008, 02:21 PM
Hi Jefferson,

What do you mean by "all data is lost on postback"? What data is lost on postback? The datalist, the treeview or the context menu? You can subscribe to the ContextMenuItemClick event either from codebehind or from the ASPX via the OnContextMenuItemClick attribute.

Regards,
Albert
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
Jefferson
Top achievements
Rank 1
answered on 24 Jan 2008, 02:25 PM
the data is lost when I clicked in one of the items of the context menu, so the treeviews of the datalist are lost. it doesn't apear anything. and the event of the context menu inside the treeview doesn't execute. do you know any working example?
0
Erjan Gavalji
Telerik team
answered on 24 Jan 2008, 04:58 PM
Hi Jefferson,

Please, find attached a small website, demonstrating the ContextMenuItemClick event handling of a RadTreeView with context menus, located in a databound datalist (to run it you would need to add the Telerik.Web.UI assemblies to the bin subfolder).

Let me know if we are missing something.

Kind regards,
Erjan Gavalji
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
Tags
TreeView
Asked by
Jefferson
Top achievements
Rank 1
Answers by
Atanas Korchev
Telerik team
Jefferson
Top achievements
Rank 1
Erjan Gavalji
Telerik team
Share this question
or