TreeNodeBinding Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir veri öğesi ile denetimde TreeView bağlandığı düğüm arasındaki ilişkiyi tanımlar.
public ref class TreeNodeBinding sealed : ICloneable, System::Web::UI::IDataSourceViewSchemaAccessor, System::Web::UI::IStateManager
public sealed class TreeNodeBinding : ICloneable, System.Web.UI.IDataSourceViewSchemaAccessor, System.Web.UI.IStateManager
type TreeNodeBinding = class
interface IStateManager
interface ICloneable
interface IDataSourceViewSchemaAccessor
Public NotInheritable Class TreeNodeBinding
Implements ICloneable, IDataSourceViewSchemaAccessor, IStateManager
- Devralma
-
TreeNodeBinding
- Uygulamalar
Örnekler
Aşağıdaki tabloda bazı örnek ağaç düğümü bağlama bildirimleri gösterilmektedir.
Örnek bağlama | Description |
---|---|
<asp:TreeNodeBinding TextField="Title" ValueField= "ID"/> |
Ağaçtaki Text tüm düğümlerin ve Value özelliklerini sırasıyla veri kaynağının Title ve ID alanlarına bağlar. ve Depth özellikleri ayarlanmadığından tüm düğümler bu ağaç düğümü bağlama bildirimini DataMember kullanır. |
<asp:TreeNodeBinding DataMember= "Book" TextField= "Title" ValueField= "ID"/> |
Ağaçtaki Text tüm düğümlerin ve Value özelliklerini sırasıyla veri kaynağındaki Title veri öğesinin Book ve ID alanlarına bağlar. |
<asp:TreeNodeBinding Depth="2" TextField= "Title" ValueField= "ID"/> |
Ağaçta Text Title derinliği 2 olan tüm düğümlerin ve Value özelliklerini sırasıyla veri kaynağındaki veri öğesinin ve ID alanlarına bağlar. |
<asp:TreeNodeBinding DataMember="Book" Depth= "2" TextField= "Title" ValueField= "ID" ImageUrl= "Image.jpg"> |
Ağaçta Text Title derinliği 2 olan tüm düğümlerin ve Value özelliklerini sırasıyla veri kaynağındaki veri öğesinin Book ve ID alanlarına bağlar. Ayrıca düğümlerin ImageUrl özelliğini statik bir değere bağlar. |
Bu bölümde üç kod örneği bulunur. İlk kod örneği, düğüm ve veri öğesi arasındaki ilişkiyi tanımlamak için nesnelerin bildirimli olarak nasıl kullanılacağını TreeNodeBinding gösterir. İkinci kod örneği, düğüm ve veri öğesi arasındaki ilişkiyi tanımlamak için nesnelerin program aracılığıyla nasıl kullanılacağını TreeNodeBinding gösterir. Üçüncü kod örneği, birinci ve ikinci kod örnekleri için örnek XML verileri sağlar.
Aşağıdaki kod örneği, düğüm ve veri öğesi arasındaki ilişkiyi tanımlamak için nesnelerin bildirimli olarak nasıl kullanılacağını TreeNodeBinding gösterir. Bu örneğin doğru çalışması için, bu kod örneğinden sonra sağlanan örnek XML verilerini Book.xml adlı bir dosyaya kopyalamanız gerekir.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeView XML Data Binding Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeView XML Data Binding Example</h3>
<asp:TreeView id="BookTreeView"
DataSourceID="BookXmlDataSource"
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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeView XML Data Binding Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeView XML Data Binding Example</h3>
<asp:TreeView id="BookTreeView"
DataSourceID="BookXmlDataSource"
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>
Aşağıdaki kod örneği, düğüm ve veri öğesi arasındaki ilişkiyi tanımlamak için nesnelerin program aracılığıyla nasıl kullanılacağını TreeNodeBinding gösterir. Bu örneğin doğru çalışması için sonraki kod örneğinde sağlanan örnek XML verilerini Book.xml adlı bir dosyaya kopyalamanız gerekir.
<%@ 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 Page_Load(Object sender, EventArgs e)
{
// Create a new TreeView control.
TreeView NewTree = new TreeView();
// Set the properties of the TreeView control.
NewTree.ID = "BookTreeView";
NewTree.DataSourceID = "BookXmlDataSource";
// Create the tree node binding relationship.
// Create the root node binding.
TreeNodeBinding RootBinding = new TreeNodeBinding();
RootBinding.DataMember = "Book";
RootBinding.TextField = "Title";
// Create the parent node binding.
TreeNodeBinding ParentBinding = new TreeNodeBinding();
ParentBinding.DataMember = "Chapter";
ParentBinding.TextField = "Heading";
// Create the leaf node binding.
TreeNodeBinding LeafBinding = new TreeNodeBinding();
LeafBinding.DataMember = "Section";
LeafBinding.TextField = "Heading";
// Add bindings to the DataBindings collection.
NewTree.DataBindings.Add(RootBinding);
NewTree.DataBindings.Add(ParentBinding);
NewTree.DataBindings.Add(LeafBinding);
// Manually register the event handler for the SelectedNodeChanged event.
NewTree.SelectedNodeChanged += new EventHandler(this.Node_Change);
// Add the TreeView control to the Controls collection of the PlaceHolder control.
ControlPlaceHolder.Controls.Add(NewTree);
}
void Node_Change(Object sender, EventArgs e)
{
// Retrieve the TreeView control from the Controls collection of the PlaceHolder control.
TreeView LocalTree = (TreeView)ControlPlaceHolder.FindControl("BookTreeView");
// Display the selected node.
Message.Text = "You selected: " + LocalTree.SelectedNode.Text;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeView Constructor Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeView Constructor Example</h3>
<asp:PlaceHolder id="ControlPlaceHolder" runat="server">
</asp:PlaceHolder>
<asp:XmlDataSource id="BookXmlDataSource"
DataFile="Book.xml"
runat="server">
</asp:XmlDataSource>
<br /><br />
<asp:Label id="Message" runat="server"/>
</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 Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Create a new TreeView control.
Dim NewTree As New TreeView
' Set the properties of the TreeView control.
NewTree.ID = "BookTreeView"
NewTree.DataSourceID = "BookXmlDataSource"
' Create the tree node binding relationship.
' Create the root node binding.
Dim RootBinding As New TreeNodeBinding
RootBinding.DataMember = "Book"
RootBinding.TextField = "Title"
' Create the parent node binding.
Dim ParentBinding As New TreeNodeBinding
ParentBinding.DataMember = "Chapter"
ParentBinding.TextField = "Heading"
' Create the leaf node binding.
Dim LeafBinding As New TreeNodeBinding
LeafBinding.DataMember = "Section"
LeafBinding.TextField = "Heading"
' Add bindings to the DataBindings collection.
NewTree.DataBindings.Add(RootBinding)
NewTree.DataBindings.Add(ParentBinding)
NewTree.DataBindings.Add(LeafBinding)
' Manually register the event handler for the SelectedNodeChanged event.
AddHandler NewTree.SelectedNodeChanged, AddressOf Node_Change
' Add the TreeView control to the Controls collection of the PlaceHolder control.
ControlPlaceHolder.Controls.Add(NewTree)
End Sub
Sub Node_Change(ByVal sender As Object, ByVal e As EventArgs)
' Retrieve the TreeView control from the Controls collection of the PlaceHolder control.
Dim LocalTree As TreeView = CType(ControlPlaceHolder.FindControl("BookTreeView"), TreeView)
' Display the selected node.
Message.Text = "You selected: " & LocalTree.SelectedNode.Text
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeView Constructor Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeView Constructor Example</h3>
<asp:PlaceHolder id="ControlPlaceHolder" runat="server">
</asp:PlaceHolder>
<asp:XmlDataSource id="BookXmlDataSource"
DataFile="Book.xml"
runat="server">
</asp:XmlDataSource>
<br /><br />
<asp:Label id="Message" runat="server"/>
</form>
</body>
</html>
Aşağıdaki kod örneği, önceki kod örnekleri için örnek XML verileri sağlar.
<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>
Açıklamalar
Denetim, her veri öğesinin TreeView birden çok alan (çeşitli özniteliklere sahip bir XML öğesi gibi) içerdiği bir veri kaynağına bağlı olduğunda, düğüm varsayılan olarak veri öğesinin yöntemi tarafından ToString
döndürülen değeri görüntüler. BIR XML öğesi söz konusu olduğunda düğüm, ağacın temel alınan yapısını gösteren öğe adını görüntüler, ancak aksi takdirde çok kullanışlı değildir. Ağaç düğümü bağlamaları belirterek düğümün özelliklerini belirli bir alana bağlayabilirsiniz. Nesne TreeNodeBinding , her veri öğesiyle bağlandığı düğüm arasındaki ilişkiyi tanımlar.
DenetimTreeView, nesnelerini özelliğinde DataBindings depolar TreeNodeBinding ve ağaç hiyerarşisi ile veri kaynağı hiyerarşisi arasında bire bir ilişki oluşturmak için bağlamaları veri kaynağına uygular. Veri kaynağındaki her veri öğesi için denetim, TreeView ilgili TreeNode nesneyi oluşturmak için veri öğesini bir TreeNodeBinding nesneyle eşleştirmeyi dener.
Nesne TreeNodeBinding oluştururken bağlama ölçütlerini belirtmeniz gerekir. Ölçütler, bir veri öğesinin düğüme ne zaman bağlanması gerektiğini belirtir. veya DataMember özelliğini veya her iki özelliği de belirtebilirsinizDepth. Her ikisini de belirterek hafif bir performans kazancı elde edilir. Düğüm derinliği, bağlanan düğüm düzeyini belirtir. Örneğin, aşağıdaki TreeNodeBinding bildirim veri kaynağının ve ID
alanlarını sırasıyla 0 derinliğine Text sahip tüm düğümlerin ve Value özelliklerine bağlarName
:
<asp:TreeNodeBinding Depth="0" TextField="Name" ValueField="ID">
Veri üyesi, temel alınan veri kaynağındaki veri öğesinin türünü belirtir, ancak veri kaynağına bağlı olarak farklı bilgileri temsil edebilir. Hiyerarşik veri kaynağındaki (arabirimle System.Web.UI.IHierarchyData temsil edilen) her veri öğesi, veri öğesinin türünü belirten bir IHierarchyData.Type özelliği kullanıma sunar. Örneğin, bir XML öğesinin veri üyesi öğenin adını belirtir. Bir veri kaynağı birden çok veri öğesi türü içerdiğinde, veri üyesi hangi veri öğesi türünün kullanılacağını belirtir. Aşağıdaki TreeNodeBinding bildirim, hiyerarşideki <Book>
konumdan bağımsız olarak bir XmlDataSource denetimin öğelerini ağaçtaki tüm düğümlere bağlar:
<asp:TreeNodeBinding DataMember="Book" TextField="Title" ValueField= "ISBN">
Bağlama ölçütleri oluşturulduktan sonra, bir değere bağlanabilen bir TreeNode nesnenin özelliğini bağlayabilirsiniz. Bir veri öğesinin alanına veya statik bir değere bağlayabilirsiniz. Statik bir değere bağlanıldığında, nesnenin TreeNodeBinding uygulandığı tüm TreeNode nesneler aynı değeri paylaşır.
Not
İlgili özelliği doğrudan düğümde ayarlayarak bir TreeNode nesnedeki ilişkili özelliği seçmeli olarak geçersiz kılabilirsiniz.
Aşağıdaki tabloda, nesnesinin TreeNodeBinding bir özelliğini TreeNode bir veri öğesinin alanına bağlamanıza olanak sağlayan sınıfın özellikleri listelenir.
Özellik | Açıklama |
---|---|
ImageUrlField | Bir nesnenin ImageUrl özelliğine TreeNode bağlanacak alan. |
ImageToolTipField | Bir nesnenin ImageToolTip özelliğine TreeNode bağlanacak alan. |
NavigateUrlField | Bir nesnenin NavigateUrl özelliğine TreeNode bağlanacak alan. |
TextField | Bir nesnenin Text özelliğine TreeNode bağlanacak alan. |
ToolTipField | Bir nesnenin ToolTip özelliğine TreeNode bağlanacak alan. |
ValueField | Bir nesnenin Value özelliğine TreeNode bağlanacak alan. |
Aşağıdaki tabloda, nesnesinin TreeNodeBinding bir özelliğini statik bir değere bağlamanıza olanak sağlayan sınıfın TreeNode özellikleri listelenir.
Özellik | Açıklama |
---|---|
ImageUrl | Bir nesnenin ImageUrl özelliğine TreeNode bağlanacak statik değer. |
ImageToolTip | Bir nesnenin ImageToolTip özelliğine TreeNode bağlanacak statik değer. |
NavigateUrl | Bir nesnenin NavigateUrl özelliğine TreeNode bağlanacak statik değer. |
PopulateOnDemand | Bir nesnenin PopulateOnDemand özelliğine TreeNode bağlanacak statik değer. |
SelectAction | Bir nesnenin SelectAction özelliğine TreeNode bağlanacak statik değer. |
ShowCheckBox | Bir nesnenin ShowCheckBox özelliğine TreeNode bağlanacak statik değer. |
Target | Bir nesnenin Target özelliğine TreeNode bağlanacak statik değer. |
Text | Bir nesnenin Text özelliğine TreeNode bağlanacak statik değer. |
ToolTip | Bir nesnenin ToolTip özelliğine TreeNode bağlanacak statik değer. |
Value | Bir nesnenin Value özelliğine TreeNode bağlanacak statik değer. |
Çakışan TreeNodeBinding nesneler tanımlanırsa, TreeView denetim ağaç düğümü bağlamalarını aşağıdaki öncelik sırasına göre uygular:
Hem TreeNodeBinding derinliği hem de veri üyesini tanımlayan ve eşleştiren nesne.
Yalnızca TreeNodeBinding veri üyesini tanımlayan ve eşleştiren nesne.
Yalnızca TreeNodeBinding derinliği tanımlayan ve eşleşen nesne.
Derinliği TreeNodeBinding veya veri üyesini tanımlayan nesne. (Bu tür bir ağaç düğümü bağlaması, ağaçtaki tüm düğümlere uygulanır.)
TreeNodeBinding Veri kaynağında eşleşmesi olmayan nesne. Bu durumda, veri öğesinin yöntemi tarafından
ToString
döndürülen değer, nesnenin uygulandığı düğümlerin ve Value özelliklerine TreeNodeBinding bağlanırText.
sınıfı, TreeNodeBinding özelliğini ayarlayarak FormatString bir düğümde görüntülenen metni biçimlendirmenize de olanak tanır.
Oluşturucular
TreeNodeBinding() |
TreeNodeBinding sınıfının yeni bir örneğini başlatır. |
Özellikler
DataMember |
Ağaç düğümü bağlamasının uygulanıp uygulanmayacağını belirlemek için değeri bir veri öğesinin özelliğiyle eşleşecek Type şekilde alır veya ayarlar. |
Depth |
Nesnenin uygulandığı düğüm derinliğini TreeNodeBinding alır veya ayarlar. |
FormatString |
Nesnenin uygulandığı düğümün metni için görüntüleme biçimini belirten dizeyi TreeNodeBinding alır veya ayarlar. |
ImageToolTip |
Nesnenin uygulandığı düğümün TreeNodeBinding yanında görüntülenen görüntünün ToolTip metnini alır veya ayarlar. |
ImageToolTipField |
Veri kaynağından nesnenin uygulandığı nesnenin TreeNodeBinding özelliğine TreeNode bağlanacak ImageToolTip alanın adını alır veya ayarlar. |
ImageUrl |
Nesnenin uygulandığı düğümün yanında görüntülenen görüntünün URL'sini TreeNodeBinding alır veya ayarlar. |
ImageUrlField |
Veri kaynağından nesnenin uygulandığı nesnenin TreeNodeBinding özelliğine TreeNode bağlanacak ImageUrl alanın adını alır veya ayarlar. |
NavigateUrl |
Nesnenin uygulandığı bir düğüme tıklandığında bağlanılacak URL'yi TreeNodeBinding alır veya ayarlar. |
NavigateUrlField |
Veri kaynağından nesnenin uygulandığı nesnenin TreeNodeBinding özelliğine TreeNode bağlanacak NavigateUrl alanın adını alır veya ayarlar. |
PopulateOnDemand |
Nesnenin uygulandığı düğümün TreeNodeBinding dinamik olarak doldurulup doldurulmadığını belirten bir değer alır veya ayarlar. |
SelectAction |
Nesnenin uygulandığı bir düğüm TreeNodeBinding seçildiğinde tetiklenen olayı veya olayları alır veya ayarlar. |
ShowCheckBox |
Nesnenin uygulandığı düğümün yanında onay kutusunun görüntülenip görüntülenmeyeceğini TreeNodeBinding belirten bir değer alır veya ayarlar. |
Target |
Nesnenin uygulandığı bir düğümle ilişkili Web sayfası içeriğinin görüntüleneceği hedef pencereyi veya çerçeveyi TreeNodeBinding alır veya ayarlar. |
TargetField |
Veri kaynağından nesnenin uygulandığı nesnenin TreeNodeBinding özelliğine TreeNode bağlanacak Target alanın adını alır veya ayarlar. |
Text |
Nesnenin uygulandığı düğüm TreeNodeBinding için görüntülenen metni alır veya ayarlar. |
TextField |
Veri kaynağından nesnenin uygulandığı nesnenin TreeNode TreeNodeBinding özelliğine Text bağlanacak alanın adını alır veya ayarlar. |
ToolTip |
Nesnenin uygulandığı düğüm TreeNodeBinding için Araç İpucu metnini alır veya ayarlar. |
ToolTipField |
Veri kaynağından nesnenin uygulandığı nesnenin TreeNode TreeNodeBinding özelliğine ToolTip bağlanacak alanın adını alır veya ayarlar. |
Value |
Görüntülenmeyen ancak nesnenin uygulandığı bir düğüm hakkında geri gönderme olaylarını işlemek için kullanılan veriler gibi ek verileri depolamak TreeNodeBinding için kullanılan bir görüntülenen değeri alır veya ayarlar. |
ValueField |
Veri kaynağından nesnenin uygulandığı nesnenin TreeNode TreeNodeBinding özelliğine Value bağlanacak alanın adını alır veya ayarlar. |
Yöntemler
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
DataMember özelliğini döndürür. |
Belirtik Arabirim Kullanımları
ICloneable.Clone() |
Nesnesinin bir kopyasını TreeNodeBinding oluşturur. |
IDataSourceViewSchemaAccessor.DataSourceViewSchema |
Bu üyenin açıklaması için bkz DataSourceViewSchema. . |
IStateManager.IsTrackingViewState |
Bu üyenin açıklaması için bkz IsTrackingViewState. . |
IStateManager.LoadViewState(Object) |
Düğüm için daha önce kaydedilmiş görünüm durumunu yükler. |
IStateManager.SaveViewState() |
Görünüm durumu değişikliklerini bir nesneye kaydeder. |
IStateManager.TrackViewState() |
Nesneye görünüm durumundaki TreeNode değişiklikleri izlemesini bildirir. |
Şunlara uygulanır
Ayrıca bkz.
- TreeView
- TreeNode
- TreeNodeBindingCollection
- XmlDataSource
- DataBindings
- DataMember
- Depth
- FormatString
- ImageUrl
- ImageUrlField
- ImageToolTip
- ImageToolTipField
- NavigateUrl
- NavigateUrl
- NavigateUrlField
- PopulateOnDemand
- SelectAction
- ShowCheckBox
- Target
- Text
- Text
- TextField
- ToolTip
- ToolTip
- ToolTipField
- Value
- Value
- ValueField