AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) C# [.NET 2.0] Datagrid und Enumeration-Lookup?
Thema durchsuchen
Ansicht
Themen-Optionen

[.NET 2.0] Datagrid und Enumeration-Lookup?

Ein Thema von Phoenix · begonnen am 18. Sep 2006 · letzter Beitrag vom 18. Sep 2006
Antwort Antwort
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#1

[.NET 2.0] Datagrid und Enumeration-Lookup?

  Alt 18. Sep 2006, 17:11
Ich finde da gerade nix auf die Schnelle.

Ich habe ein eigenes Objekt in einer von CollectionBase abgeleiteten Liste, welches ich als Datasource für ein Grid benutze (via BindingSource).

Code:
ParameterListe Parameter = new ParameterListe();
BindingSource src = new BindingSource();
src.DataSource = Parameter;
grid.DataSource = src;
Wie ich auf ein anderes Objekt mit einer weiteren DataSource einen Lookup hinbekomme ist kein Problem:

Code:
PermissionList permissions = new PermissionList();
BindingSource permissionsource = new BindingSource();
permissionsource.DataSource = permissions;

// colPermission ist eine DataGridViewComboBoxColumn
colPermission.DataSource = permissionsource;
colPermission.DisplayMember = "Name";
colPermission.ValueMember = "Name";
colPermission.DataPropertyName = "Permission";
So, nun nochmal zu meinem ersten Code: Die Parameterliste besteht aus Parameter-Objekten.

Diese haben ein bestimmtes Property:
Code:
    enum ValueType
    {
        String = 0,
        Int = 1,
        Bool = 2
    }

    class ValueItem
    {
        // [...]
        private ValueType _type = ValueType.String;

        public ValueType Type
        {
            get { return _type; }
            set
            {
                _type = value;
                DoModified();
            }
        }
        // [...]
    }
Wie bekomme ich nun den Typ als Lookup auf die möglichen Werte in die Grid hinein?
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#2

Re: [.NET 2.0] Datagrid und Enumeration-Lookup?

  Alt 18. Sep 2006, 17:32
Zitat:
Wie bekomme ich nun den Typ als Lookup auf die möglichen Werte in die Grid hinein?
Piece of cake...
Code:
blabla.DataSource = Enum.GetValues(typeof(ValueType));
Übrigens ist ValueType ein ganz fieser Name, der mit System.ValueType (dem Dummyvorfahren aller ... ValueTypes) kollidiert.

Außerdem sollte DoModified so verändert werden, dass es mit INotifyPropertyChange vereinbar ist. Ein eigenes Change Event zu schreiben macht nicht viel Sinn, da man mit INotifyPropertyChange direkt die Aktualisierung an die UI weiterreichen kann. (Die UI wird sich dann den passenden Wert von alleine nachladen)
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#3

Re: [.NET 2.0] Datagrid und Enumeration-Lookup?

  Alt 18. Sep 2006, 18:19
Hrm.. wäre zu überlegen. Zur Zeit markiere ich damit nur die Objekte die in die Datenbank geupdatet werden müssen, zumal ich den DoModified() auch bei jedem einzelnen Valuechange aufrufe (ist ne beim Kunden gewachsene Struktur die sich bis jetzt gut bewährt hat in den Fachklassen).
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz