TreeNode.ShowCheckBox プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ノードの隣にチェック ボックスが表示されるどうかを示す値を取得または設定します。
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プロパティを使用TreeView.ShowCheckBoxesする方が一般的です。 ただし、プロパティは 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 は値をBoolean
暗黙的に a NullableBoolean
にキャストしますが、C# ではキャストされません。 したがって、プロパティの状態を明示的に確認することをお勧めします。 たとえば、Visual Basicと C# の次のコード例では、プロパティのExpanded値を明示的にテストします。
次Visual Basicコード例では、プロパティの値を明示的にExpandedテストします。 この例では、プロパティが Expanded ;Nothing
にTrue
設定されているかどうかをテストし、False
ステートメントをIf
通過します。
If TreeView1.Nodes(0).Expanded = True Then 'some work hereEnd IF
この C# コード例では、プロパティの値を明示的に Expanded テストします。 この例では、プロパティが Expanded ;Null
にTrue
設定されているかどうかをテストし、False
ステートメントをIf
通過します。
if( TreeView1.Nodes[0].Expanded == true ) { //some work here}
このプロパティの値は、ビューステートに格納されます。