Condividi tramite


TreeNode.ShowCheckBox Proprietà

Definizione

Ottiene o imposta un valore che indica se viene visualizzata una casella di controllo accanto al nodo.

public:
 property Nullable<bool> ShowCheckBox { Nullable<bool> get(); void set(Nullable<bool> value); };
public bool? ShowCheckBox { get; set; }
member this.ShowCheckBox : Nullable<bool> with get, set
Public Property ShowCheckBox As Nullable(Of Boolean)

Valore della proprietà

Nullable<Boolean>

true per visualizzare la casella di controllo; in caso contrario false.

Esempio

Nell'esempio di codice seguente viene illustrato come usare la ShowCheckBox proprietà per visualizzare e nascondere a livello di codice la casella di controllo per un nodo nel TreeView controllo. Per il corretto funzionamento di questo esempio, è necessario copiare i dati XML di esempio seguenti in un file denominato Book.xml.


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void Data_Bound(Object sender, TreeNodeEventArgs e)
  {

    // Determine the depth of a node as it is bound to data.
    // If the depth is 1, show a check box.
    if(e.Node.Depth == 1)
    {

      e.Node.ShowCheckBox = true;

    }
    else
    {

      e.Node.ShowCheckBox = false;

    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeNode ShowCheckBox Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeNode ShowCheckBox Example</h3>
    
      <asp:TreeView id="BookTreeView" 
         DataSourceID="BookXmlDataSource"
         OnTreeNodeDataBound="Data_Bound"
         ShowCheckBoxes="None"
         ExpandDepth="2"  
         runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>

      <asp:XmlDataSource id="BookXmlDataSource"  
         DataFile="Book.xml"
         runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Sub Data_Bound(ByVal sender As Object, ByVal e As TreeNodeEventArgs)

    ' Determine the depth of a node as it is bound to data.
    ' If the depth is 1, show a check box.
    If e.Node.Depth = 1 Then

      e.Node.ShowCheckBox = True

    Else

      e.Node.ShowCheckBox = False

    End If

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeNode ShowCheckBox Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeNode ShowCheckBox Example</h3>
    
      <asp:TreeView id="BookTreeView" 
         DataSourceID="BookXmlDataSource"
         OnTreeNodeDataBound="Data_Bound"
         ShowCheckBoxes="None"
         ExpandDepth="2"  
         runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>

      <asp:XmlDataSource id="BookXmlDataSource"  
         DataFile="Book.xml"
         runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

Il codice seguente è dati XML di esempio per l'esempio precedente.

<Book Title="Book Title">  
    <Chapter Heading="Chapter 1">  
        <Section Heading="Section 1">  
        </Section>  
        <Section Heading="Section 2">  
        </Section>  
    </Chapter>  
    <Chapter Heading="Chapter 2">  
        <Section Heading="Section 1">  
        </Section>  
    </Chapter>  
</Book>  

Commenti

Il TreeView controllo consente di visualizzare una casella di controllo accanto all'immagine di un nodo. Utilizzare la ShowCheckBox proprietà per visualizzare o nascondere la casella di controllo per il nodo corrente.

Anche se la ShowCheckBox proprietà può essere usata per visualizzare le caselle di controllo, è più comune usare la TreeView.ShowCheckBoxes proprietà del TreeView controllo. La TreeView.ShowCheckBoxes proprietà, tuttavia, influisce su ogni tipo di nodo specificato dalla proprietà. Pertanto, la TreeNode.ShowCheckBox proprietà viene spesso usata per eseguire l'override di tale impostazione per un singolo nodo.

Poiché la proprietà è una proprietà tri-state, il TreeView.ShowCheckBoxes frammento di codice C# seguente causa un errore di compilazione:

protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)  
{  
if (TreeView1.Nodes[0].Expanded)  
{  
// some work here   
}  
}  

Anche se VB.Net esegue il cast implicito del Boolean valore in un NullableBooleanoggetto , C# non viene eseguito. Pertanto, è consigliabile controllare in modo esplicito lo stato della proprietà. Ad esempio, gli esempi di codice seguenti in Visual Basic e C# testano esplicitamente il valore della Expanded proprietà.

L'esempio di codice seguente Visual Basic verifica in modo esplicito il valore della Expanded proprietà. In questo esempio viene verificato se la Expanded proprietà è impostata su True; pertanto Nothing e False fall through l'istruzione If .

If TreeView1.Nodes(0).Expanded = True Then 'some work hereEnd IF  

Questo esempio di codice C# verifica in modo esplicito il valore della Expanded proprietà. In questo esempio viene verificato se la Expanded proprietà è impostata su True; pertanto Null e False fall through l'istruzione If .

if( TreeView1.Nodes[0].Expanded == true ) { //some work here}  

Il valore di questa proprietà viene archiviato nello stato di visualizzazione.

Si applica a

Vedi anche