Сетка данных Просмотр курсора - PullRequest
1 голос
/ 18 октября 2011

Моя таблица данных показывает таблицу из моего sqlBd.Я добавляю textBox для каждого столбца, для которого отображаются все строки.

Это мой код:

 private void CustomerViewToolStripMenuItem_Click(object sender, EventArgs e)
    {
        BindingSource Clients_bs = new BindingSource();
        SqlConnection con = new SqlConnection(dc.Con);
        con.Open();
        da.SelectCommand = new SqlCommand("SELECT * FROM Clients", con);

        da.Fill(dt);
        con.Close();

        dgCustomers.DataSource = dt;
        Clients_bs.DataSource = dt;

       txtBoxIdCustomers.DataBindings.Add(new Binding("Text", Clients_bs,"id_Client"));                

        txtBoxFullName.DataBindings.Add(new Binding("Text", Clients_bs, "prénom_Nom"));
        txtBoxAddress.DataBindings.Add(new Binding("Text", Clients_bs, "adresse"));
        txtBoxCity.DataBindings.Add(new Binding("Text", Clients_bs, "ville"));
        txtBoxProvince.DataBindings.Add(new Binding("Text", Clients_bs, "province"));
        txtBoxPostal.DataBindings.Add(new Binding("Text", Clients_bs, "code_Postal"));
        txtBoxPhone.DataBindings.Add(new Binding("Text", Clients_bs, "numéro_Teléphone"));
    }   

, который заполняет мой dataGrid, как моя таблица в sql, а в моем txtbox отображается первая строкатолько с курсором, указывающим на первую строку в моей dataGrid.

Я хочу переместить курсор сетки данных во второй строке и автоматически отобразить привязку txtbox во второй строке ....

Я могу сделать кнопку предыдущим и следующим, но не курсором ...

Спасибо за помощь!

1 Ответ

1 голос
/ 18 октября 2011

вместо этого:

dgCustomers.DataSource = dt;
Clients_bs.DataSource = dt;

сделать это:

Clients_bs.DataSource = dt;
dgCustomers.DataSource = Clients_bs;

, тогда он должен работать, так как TextBoxes и Grid имеют одинаковый BindingSource; -)

Редактировать:

, а также, пожалуйста, вместо этого:

SqlConnection con = new SqlConnection(dc.Con);
con.Open();
da.SelectCommand = new SqlCommand("SELECT * FROM Clients", con);

da.Fill(dt);
con.Close();

сделать это:

using(var con = new SqlConnection(dc.Con))
{
    con.Open();
    da.SelectCommand = new SqlCommand("SELECT * FROM Clients", con);

    da.Fill(dt);
}
...