TreeNode.ShowCheckBox Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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à
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 NullableBoolean
oggetto , 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.