Бөлісу құралы:


TreeNode.ShowCheckBox Свойство

Определение

Возвращает или задает значение, указывающее, отображается ли флажок рядом с узлом.

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)

Значение свойства

true для отображения флажка; falseв противном случае .

Примеры

В следующем примере кода показано, как использовать ShowCheckBox свойство для программного отображения и скрытия флажка для узла в элементе TreeView управления. Для правильной работы этого примера необходимо скопировать приведенные ниже примеры XML-данных в файл с именем 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>

Следующий код представляет собой пример XML-данных для предыдущего примера.

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

Комментарии

Элемент TreeView управления позволяет отобразить флажок рядом с изображением узла. ShowCheckBox Используйте свойство для отображения или скрытия флажка для текущего узла.

ShowCheckBox Хотя свойство может использоваться для отображения флажков, чаще TreeView.ShowCheckBoxes всего используется свойство TreeView элемента управления. Однако TreeView.ShowCheckBoxes свойство влияет на каждый тип узла, указанный свойством. TreeNode.ShowCheckBox Поэтому свойство часто используется для переопределения этого параметра для отдельного узла.

TreeView.ShowCheckBoxes Так как свойство является три-состоянием, следующий фрагмент кода C# вызывает ошибку компиляции:

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

Хотя VB.Net неявно приведение значения к объекту BooleanNullableBooleanC# не выполняется. Поэтому рекомендуется явно проверить состояние свойства. Например, приведенные ниже примеры кода в Visual Basic и C# явно проверяют значение Expanded свойства.

В следующем примере кода Visual Basic явным образом проверяется значение Expanded свойства. В этом примере проверяется, имеет ли Expanded свойство значение True; поэтому Nothing и False выполняется выполнение инструкции If .

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

Этот пример кода C# явно проверяет значение Expanded свойства. В этом примере проверяется, имеет ли Expanded свойство значение True; поэтому Null и False выполняется выполнение инструкции If .

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

Значение этого свойства хранится в состоянии представления.

Применяется к

См. также раздел