Laden...

Layout von DGV, TabControl und ListBox ändern

Erstellt von progi123 vor 15 Jahren Letzter Beitrag vor 15 Jahren 2.285 Views
progi123 Themenstarter:in
71 Beiträge seit 2008
vor 15 Jahren
Layout von DGV, TabControl und ListBox ändern

hi,

ich bin gerade dabei eine pokerstatistiksoftware zu programmieren. dabei gefällt
mir das aussehen des datagridviews nicht besonders gut.

Bild siehe Anhang

-wie bekomme ich die linke spalte neben "Hand" weg?
-wie kann man die kanten des dgv abrunden?
-wie kann man die form der tabs ändern?
-wie kann ich die selektionsfarben der listbox ändern?
-wie gefallen euch die farben im ganzen fenster?

13 Beiträge seit 2008
vor 15 Jahren

Hallo,

so schlecht sieht das doch gar nicht aus.
wenn du dich da im design verkünsteln willst stellt sich vielleicht die frage ob hiewr WPF nicht besser wäre. denn ich denke die z.B. beispiel die Ecken abrunden geht nicht ohne weiteres da muss wrascheinlich schon eine eigne komponente aus dem DataGridView erstellen. Was in WPF deutlich eifacher geht.

was mir dazu noch einfällt ist NetAtvantage von der Firma Infragistics da gibt es u.a. Grids und Listen mit denen man ein ganz tolles design erzeugen kann. Aber ich glaube nicht das du dafür geld ausgeben möchtest.

gruß Anubis

5.299 Beiträge seit 2008
vor 15 Jahren

-wie bekomme ich die linke spalte neben "Hand" weg?
.ShowRowHeaders=false

-wie kann man die kanten des dgv abrunden?
-wie kann man die form der tabs ändern?
beides kann man mit Ownerdrawing realisieren, entweder im Paint-Event, oder gleich einen DGV-Erben schreiben, der OnPaint überschreibt.
Für die Ecken kann man dem DGV auch eine Region zuweisen, mit abgerundeten Ecken. Aber das schneidet die Ecken ab, und du müsstest mit OwnerDrawing dann die Randlinie neu ziehen. Voll die Fummel-Arbeit, und obs dann wirklich besser aussieht...

-wie kann ich die selektionsfarben der listbox ändern?
DGV.SelectionBackColor

-wie gefallen euch die farben im ganzen fenster?
sorry, passe 😉
so optik-Sachen sind mir i.a. scheißegal. Wichtig ist gute lesbarkeit (Back/ForeGround - Kontrast), und Konzentration aufs wesentliche.
Z.B. im unteren Grid die Spalte "Hand" gehört raus, weil, dasses "AA" ist, sieht man ja an der Anwahl im oberen Grid.
Ich würd auchn SplitContainer nehmen, dann kann man je nachdem, ob man oben oder unten gucken will, sich die Größe zurecht-ziehen.

Beim Umstieg auf andere Controls sollteste bedenken, dass das Databinding mittm DGV schon recht komfortabel ist - z.B. kann der User nach jeder Spalte sortieren, ohne daß du eine Zeile schreiben musst.
Und sone Sortiererei ist häufig besser also so manche Such-Funktion, vorausgesetzt, man darf voraussetzen, der User ist des Aphlabets mächtig.

Der frühe Apfel fängt den Wurm.

progi123 Themenstarter:in
71 Beiträge seit 2008
vor 15 Jahren

.ShowrowHeaders gab es nicht, aber .RowHeadersVisible hat das gewünschte
ergebnis erzeugt.

-wie kann ich die selektionsfarben der listbox ändern?
DGV.SelectionBackColor

ich möchte eigentlich die selektionsfarbe der listbox ändern
listbox.SelectionBackColor oder .SelectionForeColor gibt es nicht.
kann das an der visual studio version liegen? ich benütze
nämlich vs 2005 express.

5.299 Beiträge seit 2008
vor 15 Jahren

mein gott, binnichne Schlafmütze!

Die Listbox habich gar nicht gesehen.
Naja, _DrawItem abonnieren. Die Eventargs davon sind eigentlich recht praktisch.
Oder auchn DGV nehmen - kann man ja so stylen, dasses von ner Listbox nicht zu unterscheiden ist.

Der frühe Apfel fängt den Wurm.

progi123 Themenstarter:in
71 Beiträge seit 2008
vor 15 Jahren

das mit den selektionsfarben und der listbox scheint eine komplizierte
angelegenheit zu sein. ich werde es wohl auf die version 9.7 verschieben. 😁

kann man die spalten im dgv irgendwie zentrieren?

5.299 Beiträge seit 2008
vor 15 Jahren

DefaultCellstyle.Alignment, oder was meinst du?

Der frühe Apfel fängt den Wurm.

progi123 Themenstarter:in
71 Beiträge seit 2008
vor 15 Jahren

ich meine nicht die textausrichtung, sondern die ausrichtung der gesamten
tabelle. bei mir befindet sich die tabelle im linken bereich des dgv.
ich möchte sie aber in der mitte haben.

5.299 Beiträge seit 2008
vor 15 Jahren

Ich mach immer eine Spalte mit AutoSizemode.Fill, dann gibts keinen linken oder rechten leerraum.
Evtl. kann man ja sogar mehrere auf Fill setzen, und die teilen sich den Platz dann.

Der frühe Apfel fängt den Wurm.