Autor Beitrag
k-weddige
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 49

Win Vista Business
C# (VS 2008 Professional)
BeitragVerfasst: Sa 03.01.09 16:07 
Ich habe eine Listbox, die als DataSource eine BindingList<string> hat. Als Displaymember verwende ich eine Erweiterungsmethode, nur leider bewirkt das nichts:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
public static class myStringEnhancements
{
    public static string FirstLine(this string s)
    {
        int nl = s.IndexOf("\n");
        if (nl > -1)
            return s.Remove(nl);
        else
            return s;
    }
}

ausblenden C#-Quelltext
1:
2:
3:
4:
...
listBox1.DataSource = data; //BindingList<string>
listBox1.DisplayMember = "FirstLine";
...

FirstLine wird nie aufgerufen und in der ListBox werden die unbearbeiteten Daten angezeigt.
Sieht jemand den Fehler? Was habe ich übersehen?

TIA
Konstantin

_________________
Meine Programme sind perfekt, der Computer versteht sie bloß nicht.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Sa 03.01.09 16:52 
Ich kenne das nicht selbst, aber in dem Beispiel wird DisplayMember anders benutzt: :gruebel:
msdn.microsoft.com/e...l.displaymember.aspx

Was soll denn dein Code bewirken? Im Moment verstehe ich das leider nicht.
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Sa 03.01.09 16:57 
Eine Extension-Method ist kein Member der erweiterten Klasse. Tatsächlich werden Extension-Methods schon zur compilezeit in die entsprechenden statischen Methoden aufgelöst.

Die Doku ist außerdem recht eindeutig darin, dass der DisplayMember eine Property sein muss. ;-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
k-weddige Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 49

Win Vista Business
C# (VS 2008 Professional)
BeitragVerfasst: Sa 03.01.09 17:31 
:( Hirn vorher einschalten hilft... :oops:
v. A. wenn man weiß, dass es eine Property sein muss. :evil:

_________________
Meine Programme sind perfekt, der Computer versteht sie bloß nicht.