2010-02-03 4 views
0

J'ai connecté un XmlDtaSource à un TreeView avec des cases à cocher. Je veux remplir les permissions de l'utilisateur dans cela.Comment modifier la propriété checked d'un TreeViewNode Dans TreeView, Sa source est XMldataSource?

<asp:TreeView ID="TreeView1" runat="server" ExpandDepth="2" 
      ShowCheckBoxes="All" ShowLines="True"> 
      <DataBindings> 
      <asp:TreeNodeBinding ValueField="Value" DataMember="menuNode" TextField="title" /> 

      </DataBindings> 

     </asp:TreeView> 

Je veux changer la valeur de la case à cocher (cochée ou non) en fonction de l'un champ dans le xml. Comment faire? Plz

Répondre

0

quelque chose comme ça

protected void Page_Load(object sender, EventArgs e) 
{ 
    foreach (TreeNode node in TreeView1.Nodes) 
    { 
     SetNode(node); 
    } 
} 

void SetNode(TreeNode node) 
{ 
    if (node.Text == "the condition for checked") // Use node.DataItem to get your Id of bounded data and check your flag there in the actual data source using this Id. Probably you would like to have a function that returns bool. 
    { 
     node.Checked = false; 
    } 
    if (node.ChildNodes.Count > 0) 
    { 
     foreach (TreeNode childnode in node.ChildNodes) 
     { 
      SetNode(childnode); 
     } 
    } 
} 

Je n'ai pas fourni de réponse précise par l'espoir qu'il vous donner une idée.

Questions connexes