vykreslitelnou Control do AppForm bez šablon
- zdvori
- Člen | 10
Zdravim,
mam vlastní instanci vykreslitelné Control, která implementuje metodu
render.
Je nějak možné nějak jednoduše přidat komponentu do formuláře mezi
jednotlivé prvky?
Řešit toto pomocí šablony se mi nechce, neboť formulář se hodně dynamicky mění a musel bych přesunout většinu logiky do šablony.
Napadlo mě řešení vytvořit wrapper implementující IFormControl do kterého bych v konstruktoru předával $vlastniControl->render().
Nějaké nápady? Díky
- Jod
- Člen | 701
Kukni sa do api:
FormContainer::addComponent ($component, string $name, [string $insertBefore =
NULL]) – https://api.nette.org/…ntainer.html#…
- zdvori
- Člen | 10
Kukni sa do api:
FormContainer::addComponent ($component, string $name, [string $insertBefore = NULL]) – https://api.nette.org/…ntainer.html#…
$this->addComponent($list,'listComponent'); //tim komponentu sice pridam, ale nevim jak ji vykreslit ve formulari
$this['listComponent']->render(); //kdyz zavolam rucne funguje vypis (ale pochopitelne jinde nez chci)
- David Grudl
- Nette Core | 8218
Standardní ConventionalRender vykresluje jen prvky IFormControl. Samozřejmě je možné vykreslovač rozšířit, ale je potřeba to udělat koncepčně. V tuto chvíli mi vykreslení cizorodé komponenty moc nejde pod fousy, mohl bys zkusit popsat, k čemu konkrétně to potřebuješ?
- zdvori
- Člen | 10
David Grudl napsal(a):
V tuto chvíli mi vykreslení cizorodé komponenty moc nejde pod fousy, mohl bys zkusit popsat, k čemu konkrétně to potřebuješ?
Dejme tomu, že potřebuji nad možností uploadovat soubor zobrazit seznam již přiřazených souborů + další info.
Ve fóru jsem také narazil na možnost výpisu pomocí group, do které bych dal výstup render() mojí komponenty, tak to nemohu použít, neboť Group již používám na automatické generování záložek vícestránkového formuláře (za pomocí JQuery). Pokud by bylo možné používat Group hierarchicky do více než jednoho zanoření tak by mi to také stačilo. Momentálně ale v group parametr ->setOption(‚embedNext‘, TRUE); nedostačuje.
Co si myslíte o řešení rozšířit AppForm o methodu addStaticText, která vložila komponentu implementující rozhraní IFormControl a zároveň byla pouze schopná vypsat nastavený text předaný jí pomocí render() metody jiné nekompatibilní IFormControl komponenty?