Beruflich Dokumente
Kultur Dokumente
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
namespace BindingTest
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
BindingSource bsA = new BindingSource(); // Airplanes
BindingSource bsP = new BindingSource(); // Passengers
private void Form2_Load(object sender, EventArgs e)
{
bsP.ListChanged += new ListChangedEventHandler(bsP_ListC
hanged);
// Create DataSet and connect it to the BindingSources
DataSet ds = CreateAirplaneSchema();
DataTable airplanes = ds.Tables["Airplane"];
DataTable passengers = ds.Tables["Passenger"];
bsA.DataSource = ds;
bsP.DataSource = ds;
bsA.DataMember = airplanes.TableName;
bsP.DataMember = passengers.TableName;
// Create some example data.
DataRow a1, a2, a3;
a1 = airplanes.Rows.Add(null, "Boeing 747", 800);
a2 = airplanes.Rows.Add(null, "Airbus A380", 1023);
a3 = airplanes.Rows.Add(null, "Cessna 162", 67);
passengers.Rows.Add(null, a1["ID"], ("mohamed"));
passengers.Rows.Add(null, a1["ID"], ("taylor"));
passengers.Rows.Add(null, a1["ID"], ("siddique"));
passengers.Rows.Add(null, a2["ID"], ("abubacker"));
passengers.Rows.Add(null, a2["ID"], ("swift"));
passengers.Rows.Add(null, a3["ID"], ("cristmas day"));
// Set up data binding for the parent Airplanes
grid.DataSource = bsA;
grid.AutoGenerateColumns = true;
txtModel.DataBindings.Add("Text", bsA, "Model");
// Set up data binding for the child Passengers
bsP.DataSource = bsA; // connect the two sources
bsP.DataMember = "Airplane_Passengers";
lstPassengers.DataSource = bsP;
lstPassengers.DisplayMember = "Name";
txtName.DataBindings.Add("Text", bsP, "Name");
}
bsA.Filter = txtAirplaneFilter.Text;
txtAirplaneFilter.BackColor = SystemColors.Windo
w;
} catch(InvalidExpressionException) {
txtAirplaneFilter.BackColor = Color.Pink;
}
}
private void txtPassengerFilter_TextChanged(object sender, Event
Args e)
{
try {
bsP.Filter = txtPassengerFilter.Text;
txtPassengerFilter.BackColor = SystemColors.Wind
ow;
} catch(InvalidExpressionException) {
txtPassengerFilter.BackColor = Color.Pink;
}
}
}
}