RadTreeview développer / effondrement ne fonctionne pas lorsqu'il est incorporé à l'intérieur RadGrid

StackOverflow https://stackoverflow.com/questions/2238100

Question

I ai un Radtreeview qui se trouve à l'intérieur d'un RadGrid. Pour une raison quelconque les divertissez / boutons effondrement du Treeview ne fonctionnent pas. Je peux étendre Treeview au départ, mais l'événement NodeExpand ne se déclenche. (Postback ne se produit sur le serveur, et j'ai plusieurs boutons sur le nœud de TreeView qui fonctionnent.) Une fois que le nœud a été étendu, le bouton d'effondrement ne fonctionne pas , et en cliquant sur elle ne fait rien. (pas au serveur postback). Je le ExpandMode mis à ServerSide. Cependant, si je change le Expandmode pour InfoClient cela fonctionne correctement.

J'ai vraiment besoin le contrôle de travailler avec ExpandMode mis à Serverside, pour réduire le chargement pour un grand arbre de.

Je ne suis pas sûr si cette question est importante. Mais j'ajoute les événements au RadTreeview lorsque le RadGrid_ItemDataBound d'événement est déclenché. Je remarque un comportement étrange, que je ne peux pas expliquer non plus, si je n'attache pas un événement NodeExpand Il parvient pas à ouvrir ou fermer. Aussi l'événement se déclenche NodeDataBound avec succès et le chargement des données fines dans l'arbre.

RadTreeView tree = (RadTreeView)e.Item.FindControl("RadTreeView1"); 
            tree.NodeDataBound += new RadTreeViewEventHandler(RadTreeView1_NodeDataBound); 
            tree.NodeExpand += new RadTreeViewEventHandler(RadTreeView1_NodeExpand); 
            tree.NodeCollapse += new RadTreeViewEventHandler(tree_NodeCollapse); 

Voici le decleration du Treeview dans le fichier ascx

<DetailTables>
    <telerik:GridTableView Name="Detail Table" ShowHeader="false">
    <Columns>                               
        <telerik:GridTemplateColumn UniqueName="FooTreeview">
            <ItemTemplate>
                <telerik:RadTreeView ID="RadTreeView1" runat="server" DataValueField="CommunicationID"
                    LoadingStatusPosition="BelowNodeText" style="white-space: normal;">
                    <NodeTemplate>
                        <uc1:FooControl ID="r1" runat="server" FooBindings='<%#DataBinder.Eval(Container,"DataItem") %>' />
                    </NodeTemplate>
                </telerik:RadTreeView>
            </ItemTemplate>
        </telerik:GridTemplateColumn>                           
    </Columns>
    </telerik:GridTableView>
</DetailTables>
Était-ce utile?

La solution

essayez d'ajouter vos événements à la RadGrid ItemCreated.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top