Avatar billede mmbn Nybegynder
29. september 2005 - 11:41 Der er 6 kommentarer og
2 løsninger

delegate og event

Hvordan fungerer delegates og events? hvor kan jeg læse om dem? kan jeg bruge dem til at sende en streng fra et class library til hovedklassen hvor jeg der skal have opdateret en txtbox med de strenge der kommer fra class library.
Avatar billede mmbn Nybegynder
29. september 2005 - 12:01 #1
i mit tilfælde kommer strengen fra en pda. metoden ser ud som følger:
public ArrayList SearchDirectories(string strDir)
        {
            //to store
            ArrayList dirList = new ArrayList();

            //start search
            string strSearch = strDir + "*.*";

            IntPtr ptrFindAllFiles = IntPtr.Zero; //return pointer
            int iCount = 0; //return count of files

            // Call looking for all files in current directory.
            CeFindAllFiles(strSearch,FAF.FAF_ATTRIBUTES | FAF.FAF_NAME, ref iCount, ref ptrFindAllFiles);

            // Loop through all files found.
            IntPtr ptrFilesFound = ptrFindAllFiles;

            while(iCount > 0)
            {
                //this function uses a Win32 pointer
                //to create a .net object
                CE_FIND_DATA structCFD = (CE_FIND_DATA)Marshal.PtrToStructure(ptrFilesFound, typeof(CE_FIND_DATA)); //output .net objekt always cast this function input win32 ptr output type

                string strFileName = structCFD.cFileName;
                uint uiFlag = (int)RAPIFileAttributes.Directory;

                if((structCFD.dwFileAttributes & uiFlag) == uiFlag)
                {
                    dirList.Add(strDir + structCFD.cFileName);
                    //al.Add(strDir + structCFD.cFileName);
                }
                else
                {
                    //if(strFileName.EndsWith(".EXE") ||strFileName.EndsWith(".exe"))
                    if(strFileName.EndsWith(".JPG") ||strFileName.EndsWith(".jpg"))
                    {
                        al.Add(strDir + structCFD.cFileName);
                    }
                }

                //get reasy for next loop
                ptrFilesFound = (IntPtr)((int)ptrFilesFound + Marshal.SizeOf(structCFD));

                iCount--;
            }

            //free memory returned by CeFindAllfiles
            CeRapiFreeBuffer(ptrFindAllFiles);

            foreach(string str in dirList)
            {
                SearchDirectories(str + "\\");
            }
        return al;
        }
det er hver gang at al.Add(strDir + structCFD.cFileName); denne linie kommer, så ville jeg gerne have structCFD.cFileName returneret til min hovedklasse der indeholder gui'en så brugeren kan se at der sker noget. så den raiser en event hver gang strengen ændres.
Avatar billede mmbn Nybegynder
29. september 2005 - 12:01 #2
metoden bliver brugt med RAPI
Avatar billede dr_chaos Nybegynder
29. september 2005 - 12:31 #3
Avatar billede dr_chaos Nybegynder
29. september 2005 - 12:33 #4
eller her:
Avatar billede mmbn Nybegynder
29. september 2005 - 12:43 #6
har fundet det andetsteds :
http://udvikleren.dk/article.php?techid=15&aid=250

men smid et svar og vi deler :)
mmmmmmm dele
Avatar billede dr_chaos Nybegynder
29. september 2005 - 12:46 #7
mmmm svar :)
Avatar billede mmbn Nybegynder
29. september 2005 - 12:48 #8
mmmm svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester