German Listview.dll

Discussion in 'German Forum' started by Filippo, Jun 3, 2007.

  1. Filippo

    Filippo Expert Licensed User

    Hallo,
    wer kann mir helfen?

    Ich habe eine Listview.dll mit "Visual Studio 2005" erstellt (es fehlen aber noch ein paar Funktionen).

    Es ist auch kein Problem in Basic4ppc einzufügen.
    Aber schon bei der Zeile "listview1.new1("form1“,0,0,200,150)“ kommt der erste Fehler.

    Was mache ich falsch?

    Als Anlage ein Basic4ppc-Projekt (TestListview.zip) und das Listview-Projekt(Listview.zip)


    Ciao,
    Filippo
     
  2. specci48

    specci48 Well-Known Member Licensed User

    Hallo Filippo,

    ich habe mich zwar bisher noch nicht an einer eigenen .dll versucht, würde aber gerne mal drüber schaun...
    ... wenn Du tatsächlich die Anhänge mitgeliefert hättest! ;)


    specci48
     
  3. Filippo

    Filippo Expert Licensed User

    mit etwas verspätung...:signOops:
     

    Attached Files:

  4. specci48

    specci48 Well-Known Member Licensed User

    Die Fehlermeldung sagt etwas von fehlender Objektinstanz...

    Ich habe mal Dein Projekt mit der VB-Variante der ScrollBar verglichen. Dabei ist mir aufgefallen, dass in Deinem Konstruktor kein Objekt erzeugt wird:

    ScrollBar:
    Code:
    Sub New(ByVal FormName As Control, ByVal Left As Int32, ByVal Top As Int32, ByVal Width As Int32, ByVal Height As Int32, ByVal IsVertical As Boolean)
            
    If IsVertical Then
                sb = [B]New VScrollBar[/B]
            
    Else
                sb = [B]New HScrollBar[/B]
            
    End If
            sb.Left = Left
            sb.Top = Top
            sb.Width = Width
            sb.Height = Height
            FormName.Controls.Add(sb)
    Somit müsstest Du Deine Listview um folgendes ergänzen:
    Code:
    Sub New(ByVal FormName As Control, ByVal Left As Int32, ByVal Top As Int32, ByVal Width As Int32, ByVal Height As Int32)
            [B]ListView1 = New 
    ListView[/B]
            ListView1.Left = Left
            ListView1.Top = Top
            ListView1.Width = Width
            ListView1.Height = Height
            FormName.Controls.Add(ListView1)

            
    ' Select the item and subitems when selection is made
            ListView1.FullRowSelect = True

        
    End Sub
    Vielleicht hilft es ja!

    Gruß
    specci48
     
  5. Filippo

    Filippo Expert Licensed User

    genial!

    du hast vollkomen recht, so muss es sein.
    **********************************************
    Sub New(ByVal FormName As Control, ByVal Left As Int32, ByVal Top As Int32, ByVal Width As Int32, ByVal Height As Int32)
    ListView1 = New System.Windows.Forms.ListView
    With ListView1
    .View = View.Details
    .Left = Left
    .Top = Top
    .Width = Width
    .Height = Height
    End With

    FormName.Controls.Add(ListView1)
    End Sub
    **********************************************
    Ich stelle die fertige DLL sobald ich fertig bin.

    Danke und Ciao
    FIlippo
     
  6. Filippo

    Filippo Expert Licensed User

    Hallo,

    ich brauche wieder etwas Hilfe damit ich die Listview.dll fertig machen kann.
    Die jetzige Version ist bisher nur auf dem Desktop lauffähig.
    Kann mir jemand sagen was noch fehlt, damit es auf dem PocketPC auch läuft?

    Vielen Dank schon im Voraus

    Ciao,
    Filippo
     

    Attached Files:

  7. hoffi

    hoffi Member

    Moin,

    Ich hab mir mal deinen quellcode angeschaut und nichts auffäliges finden können (habe allerdings auch schon ewig nich mehr mit vb.net gearbeitet). allerdings ist mir aufgefallen, dass du die libary fürs cf 2.0 entwickelt hast? ich kann mich auch täuschen, aber meine erste libary hatte ich zuerst auch für 2.0 entwickelt und sie hat auch nich funktioniert. übertrage alles doch mal in ein neues 1.0 projekt. ich vermute, dass es dann funktioniert.

    MfG Hoffi
     
  8. Filippo

    Filippo Expert Licensed User

    Hallo hoffi,

    erstmal vielen Dank für deine Antwort.
    Es ist richtig, ich möchte die Library fürs cf 2.0 entwickeln weil hier ein paar Funktionen mehr sind die ich unbedingt für meine Application brauche.
    Eins verstehe ich aber nicht, warum lauft es auf dem PPC nicht?
    So viel ich weiss lauft Basic4ppc auch mit cf 2.0 oder?

    Ich finde dass eine Listview-Library viel besser währ als ein Table-Control.

    Na ja, vielleicht kann mir doch noch jemand weiter helfen oder mit entwickeln.

    Ciao,
    Filippo
     
  9. specci48

    specci48 Well-Known Member Licensed User

    Hallo Filippo,

    mal ne ganz blöde Frage ... hast Du auf Deinem MDA Pro überhaupt .Net CF2 installiert?
    Standardmäßig besitzt WM5 nur .Net CF 1.1 (genau wie mein iPAQ, daher kann ich Deine Library auch nicht testen).


    specci48
     
  10. Filippo

    Filippo Expert Licensed User

    Hallo specci48,

    es ist bestimmt keine blöde Frage!
    Das das .Net CF2 installiert ist sicher, sonst würde die SQL-Library nicht laufen und die läuft nur mit .Net CF2.

    Aber so wie Erel jetzt mir in eine Email schreibt liegt es warscheinlich an Visual Studio 2005.
    Hier die zwei sätze:
    ########################
    You should make sure that you've created a .Net CF library and not a .Net
    library.
    If it was created with Visual Studio 2005 then it probably targets the .Net
    CF 2.0.
    ########################

    Ich werde es nochmal testen...

    Ciao
    Filippo
     
  11. alfcen

    alfcen Well-Known Member Licensed User

    Hallo Filippo,
    Darf ich mich mit einer 'bloeden' Frage einklinken?
    Hast Du Deiner ListViewTest.exe eine
    ListViewTest.exe.config
    hinzugefuegt?
    Mit der config laeuft Deine DLL auf'm iPAQ hx4700 mit .NET CF2 problemlos.

    Ganz Deiner Meinung, die ListView sieht besser aus als die Tabelle.
    Auch wenn ich die ListView gerne unter .NET CF 1.0 lauffaehig haette, verstehe, dass Du .NET CF2.x Funktionen einbauen willst.

    Gruss
    Robert
     
  12. Filippo

    Filippo Expert Licensed User

    Hallo Robert,

    erst mal Danke für dein Fidback.
    Du hast Recht, es muss nicht sein das nach jeder Sortierung der letzte Eintrag markiert wird. Es war alt nur für meine Applikation angepasst, ich werde es aber ändern.
    Ich werde auch, soweit es mir möglich ist, eine Funktion einbauen um die Farben für die Zeilen zur konfigurieren.

    Eine Frage noch! Warum wäre dir lieber Listview unter .NET CF 1.0?

    Ciao,
    Filippo
     
  13. alfcen

    alfcen Well-Known Member Licensed User

    Hallo Filippo
    Die meisten WM5.0 Pocket PCs haben .NET CF 1.0 im ROM vorinstalliert. Version 2.0 muss zusaetzlich ins RAM installiert werden. Den meisten Anwendern ist das zuviel und viele wissen nicht, dass man 2.0 auch in eine Speicherkarte installieren kann. Persoenlich habe ich heute .NET CF 3.5 installiert (damit laeuft Deine DLL auch).

    Herzlichen Dank, ich freue mich auf die neuen Funktionen :)

    Was mir noch auffiel, der Listview.Clear Befehl loescht nicht die column headers (kann natuerlich auch beabsichtigt sein). Ein Listview.RemoveCols waere schoen zu haben.

    Hattest Du Glueck mit der config Datei?

    Gruesse
    Robert
     
  14. Filippo

    Filippo Expert Licensed User

    Hallo Robert,

    mit der Config-Datei habe ich keine Probleme.
    Was ist eigentlich neu in .NET CF 3.5 oder warum hast du es installiert?

    Die Funktion Listview.RemoveCols werde ich auch noch hinzufügen.

    Ciao,
    Filippo
     
  15. alfcen

    alfcen Well-Known Member Licensed User

    Hallo Filippo
    Nach der Forum Hackerei sind wohl einige posts verlorengegangen.
    Hast Du inzwischen an Deiner DLL weitergearbeitet?
    Ciao
    Robert
     
  16. Filippo

    Filippo Expert Licensed User

  17. alfcen

    alfcen Well-Known Member Licensed User

    Ciao Filippo
    Kein Problem, viel wichtiger ist, dass Dein Urlaub erholsam war.
    Die neuste Version schau ich mir in Kuerze an.
    Deine DLL is wirklich toll, bleib am Ball :)
    Mille gracie!
    Robert
     
  18. specci48

    specci48 Well-Known Member Licensed User

    Hallo Filippo,

    damit wir das englische Forum nicht zu sehr mit einer Fremdsprache belasten, setze das Hilfe-Thema hier im deutschen Teil fort...

    Um es gleich noch einmal klar zu stellen, ich finde Deine dll echt Klasse! :sign0060:
    Das ändert aber nichts an der Tatsache, dass eine gute Hilfedatei Deine sehr gute Arbeit noch besser zur Geltung bringt.

    Zum einen sind viele Dinge eben nicht so selbsterklärend wie Du als Entwickler der dll glaubst, so nenne ich z.B. nur die Funktion AddColumn. Nur über einen Blick in die Source ist klar, dass der dritte Parameter zur Textausrichtung dient und die Ausprägungen 0, 1 und 2 für linksbündig, rechtsbündig und zentriert stehen.
    Zum anderen verliert man ohne direkte Hilfe in der IDE so langsam den Überblick, welche dll's es inzwischen mit welchen Funktionen gibt. Und nur die wenigsten werden sich die Mühe machen, nochmal sämtliche Sourcen aller verfügbaren Dll's zu durchforsten, nur um die eine oder andere Funktion zu entdecken...
    Es ist ja auch nicht notwendig, gleich ein komplettes Handbuch zu entwerfen ... ;) Ein simples Textfile tut es auch, dafür wird Dein Englich sicherlich reichen.

    Da ich heute aber ein wenig langeweile hatte, habe ich mal angefangen, eine (englische) chm Hilfe für Deine ListView.dll zu entwerfen (siehe Bildanhang). Wenn Du nichts dagegen hast, werde ich sie im Laufe der Woche vervollständigen und hier im Deutschen Forum für Dich zur Prüfung veröffentlichen. Anschliessend sollten wir sie dann der gesamten Community zur Verfügung stellen.

    Viele Grüße
    specci48
     
  19. Filippo

    Filippo Expert Licensed User

    Hallo specci48,

    ich habe gar nichts dagegen in gegenteil ich frohe mich das du eine Hilfe-Datei schreiben willst. Kannst du mir dann den Quellcode zur Verfügung stellen wenn du fertig bist? Ich könnte dann, falls neue Funktionen hinzu kommen, die Hilfe erweitern.

    Ciao,
    Filippo
     
  20. specci48

    specci48 Well-Known Member Licensed User

    Klar, schließlich ist es ja auch Deine dll ... ;)
     
Loading...