TreeNode.ShowCheckBox Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy pole wyboru jest wyświetlane obok węzła.

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)

Wartość właściwości

Nullable<Boolean>

true aby wyświetlić pole wyboru; w przeciwnym razie , false.

Przykłady

W poniższym przykładzie kodu pokazano, jak za pomocą ShowCheckBox właściwości programowo pokazać i ukryć pole wyboru dla węzła w kontrolce TreeView . Aby ten przykład działał poprawnie, należy skopiować przykładowe dane XML poniżej do pliku o nazwie 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>

Poniższy kod to przykładowe dane XML dla poprzedniego przykładu.

<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>  

Uwagi

Kontrolka TreeView umożliwia wyświetlanie pola wyboru obok obrazu węzła. ShowCheckBox Użyj właściwości , aby wyświetlić lub ukryć pole wyboru dla bieżącego węzła.

ShowCheckBox Chociaż właściwość może służyć do wyświetlania pól wyboru, częściej używa TreeView.ShowCheckBoxes się właściwości kontrolkiTreeView. Właściwość TreeView.ShowCheckBoxes ma jednak wpływ na każdy typ węzła określony przez właściwość, TreeNode.ShowCheckBox dlatego właściwość jest często używana do zastąpienia tego ustawienia dla pojedynczego węzła.

TreeView.ShowCheckBoxes Ponieważ właściwość jest właściwością trójstanową, następujący fragment kodu języka C# powoduje błąd kompilacji:

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

Chociaż VB.Net niejawnie rzutuje Boolean wartość na NullableBooleanwartość , język C# nie. W związku z tym najlepszym rozwiązaniem jest jawne sprawdzenie stanu właściwości. Na przykład następujące przykłady kodu w Visual Basic i C# jawnie testuje wartość Expanded właściwości.

Poniższy przykład kodu Visual Basic jawnie testuje wartość Expanded właściwości. Ten przykład sprawdza, czy właściwość jest ustawiona Expanded na True; w związku z tym Nothing i False należy do instrukcji If .

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

Ten przykład kodu w języku C# jawnie testuje wartość Expanded właściwości. Ten przykład sprawdza, czy właściwość jest ustawiona Expanded na True; w związku z tym Null i False należy do instrukcji If .

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

Wartość tej właściwości jest przechowywana w stanie widoku.

Dotyczy

Zobacz też