Problém s voláním funkce ve formuláři A z formuláře B   zodpovězená otázka

Architektura, WinForms

Dobrý den,

mám dva formuláře, formulář A a formulář B a následující situaci. Stisknu tlačítko ve formuláři A, toto tlačítko vyvolá formulář B, kde zadám nějaké hodnoty a stiknu tlačíko. Stisk tlačítka by měl vyvolat funkci, která je deklarována ve formuláři A a předat jí hodnoty.

A problém je, že pokud tuto funkci nadeklaruji jako 'public static', tak ji vidím z formuláře B, ale nemohu v ní použít this.InvokeRequired. Pokud ji nedaklaruji jako 'public', tak v ní sice mohu použít this.InvokeRequired, ale zase ji nevidím ve formuláři B.

Doufám, že jsem to popsal dostatečně a předem děkuji za veškeré náměty.

David

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Takhle se to rozhodně nedělá. Pokud formulář B slouží ke sběru hodnot zadaných uživatelem (typické pro modální dialogové okno s tlačítky OK a Storno), tak tyto hodnoty si načte formulář A po uzavření formuláře B a s nimi potom provádí co je třeba.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Bohužel, ale zde nejde o typické dialogové okno, které vrací OK a Strorno pomocí dvou tlačítek. Jedná se o přihlášení do programu jakožto správce. S tím, že po správném přihlášení by formulář B měl umožnit spouštění některých funkcí ve formuláři A.

Nebo, pokud znáte lepší způsob pro autorizaci správce, mohl byste uvést příklad? Stačí jen "ukázat cestu".

David

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak právě přihlašovací okno je učebnicový příklad modálního dialogu s tlačítkem OK a Storno. Pokud chcete aby ta autentizace za něco stála, použijte autentizační a autorizační mechanismy ze jmenného prostoru System.Security.Principal. Serveru (nebo části aplikace) předáte přihlašovací údaje (získané z přihlašovacího formuláře) a ten vám vrátí GenericPrincipal, ze kterého pak v jednotlivých metodách můžete získávat přiřazené role a tím pádem oprávnění k provedení metody.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback