Name:
ImageListBox
Beschreibung:
Es handelt sich hierbei um eine ListBox mit überarbeiteten ListBoxItems (ImageListBoxItem). Und der möglichkeit ein Dictionary als Datenquelle für Komplexe Datenbindung zu wählen. Für die Datenbindung eines Dictionarys wurde ein eigener MemberFieldEditor eingeführt.
*Update*
*Update*
*Update*
Screenshot(s):
Verwendete Programmiersprache(n) und IDE(s):
c#, Visual Studio 2017
Systemanforderungen:
.Net 3.5
Systemveränderungen:
Keine
Download(s):
Siehe Anhang
Lizenz/Weitergabe:
OpenSource
Anwendungs -Beispiel:
Die Variable
c#
vb
ImageListBox
Beschreibung:
Es handelt sich hierbei um eine ListBox mit überarbeiteten ListBoxItems (ImageListBoxItem). Und der möglichkeit ein Dictionary als Datenquelle für Komplexe Datenbindung zu wählen. Für die Datenbindung eines Dictionarys wurde ein eigener MemberFieldEditor eingeführt.
*Update*
- Die Einstellungen für die DataListBoxItems wurden in einer eigenen Eigenschaften -Kategorie zusammen gefasst.
- Es ist nun möglich die maximale Anzahl an Zeilen, die der Content -Text bei einem Zeilenumbruch verwenden darf, im Designer festzulegen
*Update*
- Es wurde ein eigener
MemberFieldEditor
eingeführt. Dieser wird für dei EigenschaftenImageMember
,HeaderMember
undContentMember
verwendet. - Die Eigenschaften vom Typ Integer lassen sich nun mittels einem
NummericUpDown
Steuerelement einstellen.
*Update*
- Es wurde ein Bug behoben, bei dem ListboxItems die manuel hinzugefügt worden sind, nicht gezeichnet wurden.
- Für die Datenbindung eines Dictionarys wird nun ein MemberInfo -Objekt verwendet.
- Projekt wurde umbennant.
Screenshot(s):
Verwendete Programmiersprache(n) und IDE(s):
c#, Visual Studio 2017
Systemanforderungen:
.Net 3.5
Systemveränderungen:
Keine
Download(s):
Siehe Anhang
Lizenz/Weitergabe:
OpenSource
Anwendungs -Beispiel:
Die Variable
dlb
entspricht einer DataListBoxC#-Quellcode
- private void Form1_Shown(object sender, EventArgs e)
- {
- // DataListBoxItems erstellen
- //***************************
- Size previewImageSize = new Size(40, 40); // Die Größe für die Bilder der ListBoxItems
- KnownColor[] colors = (KnownColor[])Enum.GetValues(typeof(KnownColor));
- DataListBoxItem[] myItemsWithImage = new DataListBoxItem[colors.Length]; // ListBoxItems mit Bilder
- DataListBoxItem[] myItems = new DataListBoxItem[colors.Length]; // ListBoxItems ohne Bilder
- for (int i = 0; i < colors.Length; i++) {
- myItemsWithImage[i] = new DataListBoxItem(CreatePreviewImage(previewImageSize, Color.FromKnownColor(colors[i])), colors[i].ToString(), "Ich bin eine kurze Beschreibung zu diesem Bild...");
- myItems[i] = new DataListBoxItem(null, colors[i].ToString(), "Ich bin eine kurze Beschreibung zu diesem Bild...");
- }
- // Daten an ListBox binden
- //************************
- dlb.ImageMember = "Image";
- dlb.HeaderMember = "HeaderText";
- dlb.ContentMember = "ContentText";
- dlb.DataSource = myItemsWithImage;
- //dlb.DataSource = myItems;
- }
VB.NET-Quellcode
- Private Sub Form1_Shown(sender As Object, e As EventArgs)
- ' DataListBoxItems erstellen
- '***************************
- Dim previewImageSize As New Size(40, 40)
- ' Die Größe für die Bilder der ListBoxItems
- Dim colors As KnownColor() = DirectCast([Enum].GetValues(GetType(KnownColor)), KnownColor())
- Dim myItemsWithImage As DataListBoxItem() = New DataListBoxItem(colors.Length - 1) {}
- ' ListBoxItems mit Bilder
- Dim myItems As DataListBoxItem() = New DataListBoxItem(colors.Length - 1) {}
- ' ListBoxItems ohne Bilder
- For i As Integer = 0 To colors.Length - 1
- myItemsWithImage(i) = New DataListBoxItem(CreatePreviewImage(previewImageSize, Color.FromKnownColor(colors(i))), colors(i).ToString(), "Ich bin eine kurze Beschreibung zu diesem Bild...")
- myItems(i) = New DataListBoxItem(Nothing, colors(i).ToString(), "Ich bin eine kurze Beschreibung zu diesem Bild...")
- Next
- ' Daten an ListBox binden
- '************************
- dlb.ImageMember = "Image"
- dlb.HeaderMember = "HeaderText"
- dlb.ContentMember = "ContentText"
- dlb.DataSource = myItemsWithImage
- 'dlb.DataSource = myItems;
- End Sub
Dieser Beitrag wurde bereits 14 mal editiert, zuletzt von „Fakiz“ ()