#6 ingiraxo
Upraveno dekuji za pouceni-zase sem o neco chytrejsi.
Příspěvky odeslané z IP adresy 188.175.122.–
Takze za prve ingiraxo respekt! Moc dekuju!
A ted popis reseni pro blbe tedy jako ja:
Ve formu rodicovskem zobrazime form pro zadani:
formAdd frmAdd = new formAdd();
frmAdd.ShowDialog(this);
Ve tride tzv. rodicovskeho formu mame funkci pro refresh: public bool refreshDGV () { LoadData(); return true;} //zkraceny priklad
Ve formu "frmAdd" nebo v jakemkoliv kde to potrebujeme pak volame: (Owner as frmAdd).refreshDGV();
Dekuji za pomoc.
#2 ingiraxo
Problem je, ze z druheho Formu "nevidim" na datagrid umisteny v prvnim Formu. Kdyz v tzv. rodicovskem formu vytvorim form na vlozeni noveho zaznamu tzn.
formAdd frmAdd = new formAdd();
frmAdd.ShowDialog();
Pak v tomto formu "frmAdd" nevidim na datagrid ve formu master (nemuzu tak ani zavolat refresh). Ted je tedy otazka jak takovou situaci resit. Ja myslel ze pomoci delegatu. Jestli ne pak se ptam jak?
Dekuju.
Pekny podvecer, mam aplikaci kde mam v hlavnim Formu DataGridView. Pro pridani noveho zaznamu se otevre Form jako dialog, ve kterem se prida polozka . Po pridani polozky by se mela objevit v DataGridu umistenenm na hlavnim Formu. Form, ve kterem probiha zadani se po ulozeni nezavira, ale zustava otevren pro vlozeni dalsi polozky. Tedy jde o to, aby uzivatel videl jiz pridanou polozku v DataGridu. Precetl jsem si nejake materialy a zjistil, ze lze tuto "komunikaci" resit pomoci delegatu.
Vytvoril sem v hlavnim Formu primo pod urovni jmeneho prostoru delegata
namespace WinApplication
{
delegate void delegateRefreshDataGridView();
.
.
.
public void refDGV()
{
LoadData(); //naplni datagrid
}
}
A nasledne sem se pokousel ve Formu slouzicimu pro vlozeni nove polozky zavolat funkci pro refresh DataGridu. Bohuzel nedobral jsem se pozadovaneho vysledku. Mohl byste mne nekdo nakopnout jak na to?
Dekuji