jak dostać się do datagridview w innej formatce

0

Witam.

Jak w temacie.

Chciałbym zrobić coś takiego, że mam otwarte okienko z datagridview, otwieram nowy form, w którym mam nowy datagridview. Dodaję tam wpisy i chciałbym je później wpisać do datagridview z tej pierwszej formatki. Jak to zrobić? :/

0

Dodać referencje drugiego gridview na pierwszej formatce, a następnie odwołać do konkretnego wiersza z drugiego gridview i pobrać dane.
Lub na odwrót, dodać referencje pierwszego gridview do drugiej formatki i podczas dodawania danych do gridview automatycznie aktualizować pierwszy gridview.

0

Witam.

Próbowałem zrobić tak:

w pierwszej formatce dałem w designerze tak:

public System.Windows.Forms.DataGridView dataGridView1;

w drugiej formatce chciałem dać tak:

Form1.dataGridView1= dataGridView2;

niestety dataGridView1, nie jest widoczny w tej drugiej formatce :/

będę wdzięczny za wskazanie gdzie popełniam błąd

0

Bedziemy wdzieczni za wskazanie jaki blad podaje kompilator.

0

oczywiście:

Error 1 An object reference is required for the nonstatic field, method, or property 'Edytor.Form1.dataGridView1'

0

Czym jest Edytor i Form1 - nazwa klasy czy obiektu?

0

Edytor = namespace
form1 = klasa (od pierwszego forma)

0

Nie mozesz sie w takim razie tak odwolac. Musisz przekazac obiekt pierwszej formatki do drugiej, zeby ta ostatnia wiedziala na czym ma operowac. Bylo sporo razy na forum - poszukaj - w ciagu ostatniego miesiaca cos bylo zdaje sie.

0

Dobra znalazłem coś... :)

i teraz tak. Przekazałem już jako obiekt:

Form form2 = new form2(dataGridView1);
form2.ShowDialog();

a następnie odebrałem:

public form2(DataGridView GridGlowny)
{
InitializeComponent();

        object[] row = { "3", "2.10", "4.50","skladnik", "cos", "1", "cos" };
        GridGlowny.Rows.Add(row); //<-- tutaj probuje dodać wiersz do grida w pierwszej formatce
        
    }
0

Kurde sorka, zapomniałem napisać jaki błąd:

Rows cannot be programmatically added to the DataGridView's rows collection when the control is data-bound.

0

Czyli nie mozesz zmieniac datagrida recznie, jesli jest powiazany z np. DataSet itp. Zmieniaj w takim razie to z czym powiazany jest ten DataGrid, czyli DataTable, DataSet, itp.

0

Stwórz kolumny i obiekt BindingSource bindingsource do którego będziesz dodawał obiekty bindingsource.Add(twoj_obiekt), ustaw dataGridView.DataSource = bindingsource

1 użytkowników online, w tym zalogowanych: 0, gości: 1