2010-05-30 6 views
1

Je suis en train de rafraîchir une page asp.net en utilisant cette commande:Rafraîchir la page isnt travaillant dans asp.net en utilisant treeview

<meta http-equiv="Refresh" content="10"/> 

Sur cette page j'ai 2 arborescences. L'actualisation fonctionne correctement lorsque j'ouvre la page, mais lorsque je clique sur l'une des arborescences et que je l'agrandis, l'actualisation s'arrête et la page n'est pas actualisée.

Des idées pour lesquelles cela peut arriver? Y a-t-il un lien avec l'arborescence en cours d'extension?

Voici le code complet de la page:

public partial class Results : System.Web.UI.Page 
{ 

    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 

    // Function that moves reviewed yellow card to reviewed tree 
    protected void ycActiveTree_SelectedNodeChanged(object sender, EventArgs e) 
    { 
     ycActiveTree.SelectedNode.Text = "Move To Active"; 
     ycReviewedTree.PopulateNodesFromClient = false; 
     ycReviewedTree.Nodes[ycReviewedTree.Nodes.Count - 1].ChildNodes.Add(ycActiveTree.SelectedNode.Parent); 
     Application["reviewedTree"] = new ArrayList(); 
     int count = ((ArrayList)Application["activeTree"]).Count; 
     // Move all the nodes from activeTree application to reviewedTree application 
     for (int i = 0; Application["activeTree"] != null && i < count; i++) 
     { 
      ((ArrayList)Application["reviewedTree"]).Add(((ArrayList)Application["activeTree"])[i]); 
      ((ArrayList)Application["activeTree"]).RemoveAt(0); 
     } 
    } 

    protected void ycActiveTree_TreeNodePopulate(object sender, TreeNodeEventArgs e) 
    { 

     if (Application["idList"] != null && e.Node.Depth == 0) 
     { 

      string[] words = ((String)Application["idList"]).Split(' '); // Yellow Card details 
      TreeNode child = new TreeNode(""); 
      // Go over all the yellow card details and populate the treeview 
      for (int i = 1; i < words.Length; i++) 
      { 
       child.SelectAction = TreeNodeSelectAction.None; 
       // Same yellow card 
       if (words[i] != "*") 
       { 
        // End of details and start of point ip's 
        if (words[i] == "$") 
        { 
         // Add the yellow card node 
         TreeNode yellowCardNode = new TreeNode(child.Text); 
         yellowCardNode.SelectAction = TreeNodeSelectAction.Expand; 

         e.Node.ChildNodes.Add(yellowCardNode); 


         child.Text = ""; 
        } 
        // yellow card details 
        else 
        { 
         child.Text = child.Text + words[i] + " "; 
        } 
       } 
       // End of yellow card 
       else 
       { 
        child.PopulateOnDemand = false; 
        child.SelectAction = TreeNodeSelectAction.None; 

        // Populate the yellow card node 
        e.Node.ChildNodes[e.Node.ChildNodes.Count - 1].ChildNodes.Add(child); 


        TreeNode moveChild = new TreeNode("Move To Reviewed"); 
        moveChild.PopulateOnDemand = false; 
        moveChild.SelectAction = TreeNodeSelectAction.Select; 

        e.Node.ChildNodes[e.Node.ChildNodes.Count - 1].ChildNodes.Add(moveChild); 

        child = new TreeNode(""); 


        Application["activeTree"] = new ArrayList(); 
        ((ArrayList)Application["activeTree"]).Add(e.Node.ChildNodes[e.Node.ChildNodes.Count - 1]); 
       } 
      } 
     } 
     // If there arent new yellow cards 
     else if (Application["activeTree"] != null) 
     { 
      // Populate the active tree 
      for (int i = 0; i < ((ArrayList)Application["activeTree"]).Count; i++) 
      { 
       e.Node.ChildNodes.Add((TreeNode)((ArrayList)Application["activeTree"])[i]); 
      } 
     } 
     // If there were new yellow cards and nodes that moved from reviewed tree to active tree 
     if (Application["idList"] != null && Application["activeTree"] != null && e.Node.ChildNodes.Count != ((ArrayList)Application["activeTree"]).Count) 
     { 
      for (int i = e.Node.ChildNodes.Count; i < ((ArrayList)Application["activeTree"]).Count; i++) 
      { 
       e.Node.ChildNodes.Add((TreeNode)((ArrayList)Application["activeTree"])[i]); 
      } 
     } 
     // Nullify the yellow card id's 
     Application["idList"] = null; 
    } 

    protected void ycReviewedTree_SelectedNodeChanged(object sender, EventArgs e) 
    { 
     ycActiveTree.PopulateNodesFromClient = false; 
     ycReviewedTree.SelectedNode.Text = "Move To Reviewed"; 
     ycActiveTree.Nodes[ycActiveTree.Nodes.Count - 1].ChildNodes.Add(ycReviewedTree.SelectedNode.Parent); 
     int count = ((ArrayList)Application["reviewedTree"]).Count; 
     // Move all the nodes from reviewedTree application to activeTree application 
     for (int i = 0; Application["reviewedTree"] != null && i < count; i++) 
     { 
      ((ArrayList)Application["activeTree"]).Add(((ArrayList)Application["reviewedTree"])[i]); 
      ((ArrayList)Application["reviewedTree"]).RemoveAt(0); 
     } 
    } 

    protected void ycReviewedTree_TreeNodePopulate(object sender, TreeNodeEventArgs e) 
    { 
     if (Application["reviewedTree"] != null) 
     { 
      // Populate the reviewed tree 
      for (int i = 0; i < ((ArrayList)Application["reviewedTree"]).Count; i++) 
      { 
       e.Node.ChildNodes.Add((TreeNode)((ArrayList)Application["reviewedTree"])[i]); 
      } 
     } 
    } 
} 

Merci,

Greg

+0

Est-ce que personne ne le sait? :( – Greg

Répondre

0

Résolu en définissant la propriété "EnabledClientScript" des arbres à false.

Questions connexes