BindingContext.Item[] Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient un BindingManagerBase.
Surcharges
| Nom | Description |
|---|---|
| Item[Object, String] |
Obtient un BindingManagerBase élément associé à la source de données et au membre de données spécifiés. |
| Item[Object] |
Obtient l’élément BindingManagerBase associé à la source de données spécifiée. |
Item[Object, String]
- Source:
- BindingContext.cs
- Source:
- BindingContext.cs
- Source:
- BindingContext.cs
- Source:
- BindingContext.cs
- Source:
- BindingContext.cs
Obtient un BindingManagerBase élément associé à la source de données et au membre de données spécifiés.
public:
property System::Windows::Forms::BindingManagerBase ^ default[System::Object ^, System::String ^] { System::Windows::Forms::BindingManagerBase ^ get(System::Object ^ dataSource, System::String ^ dataMember); };
public System.Windows.Forms.BindingManagerBase this[object dataSource, string dataMember] { get; }
public System.Windows.Forms.BindingManagerBase this[object dataSource, string? dataMember] { get; }
member this.Item(obj * string) : System.Windows.Forms.BindingManagerBase
Default Public ReadOnly Property Item(dataSource As Object, dataMember As String) As BindingManagerBase
Paramètres
- dataSource
- Object
Source de données associée à un particulier BindingManagerBase.
- dataMember
- String
Chemin de navigation contenant les informations qui se résolvent en un chemin d’accès spécifique BindingManagerBase.
Valeur de propriété
Pour BindingManagerBase la source de données et le membre de données spécifiés.
Exceptions
L’élément spécifié dataMember n’existe pas dans la source de données.
Exemples
L’exemple de code suivant montre comment utiliser l’élément Item[] pour récupérer la BindingManagerBase liaison particulière. Il montre également comment gérer l’événement BindingComplete pour BindingManagerBase s’assurer que plusieurs contrôles liés à la même source de données restent synchronisés quand l’une des valeurs de contrôle est modifiée. Pour exécuter cet exemple, collez le code dans un Windows Form et appelez la InitializeControlsAndData méthode à partir du constructeur ou Load de la méthode de gestion des événements du formulaire.
private void InitializeControlsAndData()
{
// Initialize the controls and set location, size and
// other basic properties.
this.dataGridView1 = new DataGridView();
this.textBox1 = new TextBox();
this.textBox2 = new TextBox();
this.dataGridView1.ColumnHeadersHeightSizeMode =
DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Dock = DockStyle.Top;
this.dataGridView1.Location = new Point(0, 0);
this.dataGridView1.Size = new Size(292, 150);
this.textBox1.Location = new Point(132, 156);
this.textBox1.Size = new Size(100, 20);
this.textBox2.Location = new Point(12, 156);
this.textBox2.Size = new Size(100, 20);
this.ClientSize = new Size(292, 266);
this.Controls.Add(this.textBox2);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.dataGridView1);
// Declare the DataSet and add a table and column.
DataSet set1 = new DataSet();
set1.Tables.Add("Menu");
set1.Tables[0].Columns.Add("Beverages");
// Add some rows to the table.
set1.Tables[0].Rows.Add("coffee");
set1.Tables[0].Rows.Add("tea");
set1.Tables[0].Rows.Add("hot chocolate");
set1.Tables[0].Rows.Add("milk");
set1.Tables[0].Rows.Add("orange juice");
// Add the control data bindings.
dataGridView1.DataSource = set1;
dataGridView1.DataMember = "Menu";
textBox1.DataBindings.Add("Text", set1,
"Menu.Beverages", true, DataSourceUpdateMode.OnPropertyChanged);
textBox2.DataBindings.Add("Text", set1,
"Menu.Beverages", true, DataSourceUpdateMode.OnPropertyChanged);
BindingManagerBase bmb = this.BindingContext[set1, "Menu"];
bmb.BindingComplete += new BindingCompleteEventHandler(bmb_BindingComplete);
}
private void bmb_BindingComplete(object sender, BindingCompleteEventArgs e)
{
// Check if the data source has been updated, and that no error has occurred.
if (e.BindingCompleteContext ==
BindingCompleteContext.DataSourceUpdate && e.Exception == null)
// If not, end the current edit.
e.Binding.BindingManagerBase.EndCurrentEdit(); ;
}
Dim WithEvents bmb As BindingManagerBase
Private Sub InitializeControlsAndData()
' Initialize the controls and set location, size and
' other basic properties.
Me.dataGridView1 = New DataGridView()
Me.textBox1 = New TextBox()
Me.textBox2 = New TextBox()
Me.dataGridView1.ColumnHeadersHeightSizeMode = _
DataGridViewColumnHeadersHeightSizeMode.AutoSize
Me.dataGridView1.Dock = DockStyle.Top
Me.dataGridView1.Location = New Point(0, 0)
Me.dataGridView1.Size = New Size(292, 150)
Me.textBox1.Location = New Point(132, 156)
Me.textBox1.Size = New Size(100, 20)
Me.textBox2.Location = New Point(12, 156)
Me.textBox2.Size = New Size(100, 20)
Me.ClientSize = New Size(292, 266)
Me.Controls.Add(Me.textBox2)
Me.Controls.Add(Me.textBox1)
Me.Controls.Add(Me.dataGridView1)
' Declare the DataSet and add a table and column.
Dim set1 As New DataSet()
set1.Tables.Add("Menu")
set1.Tables(0).Columns.Add("Beverages")
' Add some rows to the table.
set1.Tables(0).Rows.Add("coffee")
set1.Tables(0).Rows.Add("tea")
set1.Tables(0).Rows.Add("hot chocolate")
set1.Tables(0).Rows.Add("milk")
set1.Tables(0).Rows.Add("orange juice")
' Add the control data bindings.
dataGridView1.DataSource = set1
dataGridView1.DataMember = "Menu"
textBox1.DataBindings.Add("Text", set1, "Menu.Beverages", _
True, DataSourceUpdateMode.OnPropertyChanged)
textBox2.DataBindings.Add("Text", set1, "Menu.Beverages", _
True, DataSourceUpdateMode.OnPropertyChanged)
' Get the BindingManagerBase for this binding.
bmb = Me.BindingContext(set1, "Menu")
End Sub
Private Sub bmb_BindingComplete(ByVal sender As Object, ByVal e As BindingCompleteEventArgs) _
Handles bmb.BindingComplete
' Check if the data source has been updated, and that no error has occurred.
If e.BindingCompleteContext = BindingCompleteContext.DataSourceUpdate _
AndAlso e.Exception Is Nothing Then
' If not, end the current edit.
e.Binding.BindingManagerBase.EndCurrentEdit()
End If
End Sub
Remarques
Utilisez cette surcharge lorsque le BindingManagerBase groupe gère un ensemble d’objets pour lesquels la source de Binding données contient plusieurs objets. Par exemple, un DataSet peut contenir plusieurs DataTable objets liés par DataRelation des objets. Dans ce cas, le chemin de navigation est requis pour permettre le BindingContext retour correct BindingManagerBase.
Note
La Item[] propriété retourne toujours un BindingManagerBase, lorsque le dataMember paramètre est valide. Il ne reviendra nulljamais .
Consultez la Binding classe pour obtenir la liste des sources de données possibles et pour plus d’informations sur la création de liaisons entre les contrôles et les sources de données.
Si le souhaité BindingManagerBase gère une liste, le chemin de navigation doit également se terminer par une liste. Par exemple, le code C# suivant lie un TextBox contrôle à la date d’ordre dans une table de commandes. Le chemin de navigation inclut le TableName, le RelationNameet le ColumnName. Toutefois, il BindingManagerBase doit être récupéré à l’aide uniquement de l’élément TableName et RelationName (qui se résout en liste).
// The navigation path for a Binding ends with a property.
textBox1.DataBindings.Add
("Text", dataSet1, "Customers.custToOrders.OrderDate");
// The navigation path for the BindingManagerBase ends with a list.
BindingManagerBase bmOrders = this.BindingContext
[dataSet1, "Customers.custToOrders"];
Lorsque vous retournez un BindingManagerBase, vous devez utiliser la même source de données que le Binding chemin de navigation et le modifier uniquement.
Utilisez la Contains méthode pour déterminer si le souhaité BindingManagerBase existe déjà.
Voir aussi
S’applique à
Item[Object]
- Source:
- BindingContext.cs
- Source:
- BindingContext.cs
- Source:
- BindingContext.cs
- Source:
- BindingContext.cs
- Source:
- BindingContext.cs
Obtient l’élément BindingManagerBase associé à la source de données spécifiée.
public:
property System::Windows::Forms::BindingManagerBase ^ default[System::Object ^] { System::Windows::Forms::BindingManagerBase ^ get(System::Object ^ dataSource); };
public System.Windows.Forms.BindingManagerBase this[object dataSource] { get; }
member this.Item(obj) : System.Windows.Forms.BindingManagerBase
Default Public ReadOnly Property Item(dataSource As Object) As BindingManagerBase
Paramètres
- dataSource
- Object
Source de données associée à un particulier BindingManagerBase.
Valeur de propriété
Pour BindingManagerBase la source de données spécifiée.
Exemples
L’exemple de code suivant retourne trois BindingManagerBase objets : un pour un DataView, un pour un ArrayListet un pour l’un DataSource d’un Binding qui appartient à un TextBox contrôle.
void ReturnBindingManagerBase()
{
// Get the BindingManagerBase for a DataView.
BindingManagerBase^ bmCustomers = this->BindingContext[ myDataView ];
/* Get the BindingManagerBase for an ArrayList. */
BindingManagerBase^ bmOrders = this->BindingContext[ myArrayList ];
// Get the BindingManagerBase for a TextBox control.
BindingManagerBase^ baseArray = this->BindingContext[ textBox1->DataBindings[ nullptr ]->DataSource ];
}
private void ReturnBindingManagerBase()
{
// Get the BindingManagerBase for a DataView.
BindingManagerBase bmCustomers =
this.BindingContext [myDataView];
/* Get the BindingManagerBase for an ArrayList. */
BindingManagerBase bmOrders =
this.BindingContext[myArrayList];
// Get the BindingManagerBase for a TextBox control.
BindingManagerBase baseArray =
this.BindingContext[textBox1.DataBindings[0].DataSource];
}
Private Sub ReturnBindingManagerBase()
' Get the BindingManagerBase for a DataView.
Dim bmCustomers As BindingManagerBase = _
Me.BindingContext(myDataView)
' Get the BindingManagerBase for an ArrayList.
Dim bmOrders As BindingManagerBase = _
Me.BindingContext(myArrayList)
' Get the BindingManagerBase for a TextBox control.
Dim baseArray As BindingManagerBase = _
Me.BindingContext(Text1.DataBindings(0).DataSource)
End Sub
Remarques
Utilisez cette surcharge si le BindingManagerBase chemin de navigation souhaité ne nécessite pas de chemin de navigation. Par exemple, si l’ensemble BindingManagerBase d’objets qui utilisent un Binding ou ArrayList comme chemin DataTablede navigation, aucun chemin de DataSource navigation n’est requis.
Note
La Item[] propriété retourne toujours un BindingManagerBase, et ne retourne nulljamais .
Consultez la Binding classe pour obtenir la liste des sources de données possibles et pour plus d’informations sur la création de liaisons entre les contrôles et les sources de données.