vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Tabulator in Zellen eines DataGridView 
Autor: Kuno60
Datum: 07.07.14 13:11

Natürlich ist es besser, wenn alle Daten in getrennten Spalten stehen. Es muss auch nicht alles in einem DataGridView stehen. Beim Anwählen einer Zeile, können Detail-Daten in weiteren DGV's oder Einzelsteuerelementen angezeigt werden. Es gibt viele Möglichkeiten für Detailansichten. Auch kann man den Zellen ein Kontextmenü zuweisen.

Falls die Werte im DGV nur angezeigt werden sollen, also nicht Bearbeitet werden sollen, so ist auch eine grafische Lösung möglich. Dabei musst du selbst die Breite und Höhe einer Zelle einstellen.
Hier ein Beispiel (ohne Zeilenumbruch):
Die Daten werden hier am Doppelpunkt getrennt in Links und Rechts.
  Private Sub DataGridView_CellPainting(sender As Object, e As _
    DataGridViewCellPaintingEventArgs) Handles BenutzerDataGridView.CellPainting
    Dim dgv = DirectCast(sender, DataGridView)
    Try
 
      'todo: Hier den Namen der Spalte anpassen!
      If dgv.Columns("DataGridViewTextBoxColumn1").Index = e.ColumnIndex _
        AndAlso e.RowIndex >= 0 Then
 
        'Hintergrund und Gitter zeichnen
        e.PaintBackground(e.CellBounds, True)
 
        'Text zeichnen
        If (e.Value IsNot Nothing) Then
 
          'todo: Hier eventuell Rendermodus anpassen!
          e.Graphics.TextRenderingHint = _
            Drawing.Text.TextRenderingHint.ClearTypeGridFit
 
          Dim vs = CStr(e.Value).Split(":"c) 'Text teilen am Doppelpunkt
          If vs.Length = 2 Then 'Text links und rechts zeichnen
            Using sf As New StringFormat With {.LineAlignment = _
              StringAlignment.Center}
              Using sbr As New SolidBrush(e.CellStyle.ForeColor)
                If (e.State And DataGridViewElementStates.Selected) > 0 Then
                  sbr.Color = e.CellStyle.SelectionForeColor
                End If
                sf.Alignment = StringAlignment.Near 'links
                e.Graphics.DrawString(vs(0).Trim & ":", e.CellStyle.Font, sbr, _
                  e.CellBounds, sf)
                sf.Alignment = StringAlignment.Far 'rechts
                e.Graphics.DrawString(vs(1).Trim, e.CellStyle.Font, sbr, _
                  e.CellBounds, sf)
              End Using
            End Using
          Else 'Normal zeichnen
            e.PaintContent(e.CellBounds)
          End If
        End If
 
        e.Handled = True
      End If
    Catch ex As Exception
    End Try
  End Sub
Und so würde es dann etwa in der Zelle aussehen:
|Z76Z43-6:    1532,11 € / Stk.|
|P456:          1,56 € / Meter|
|Z76Z43-6:    1532,11 € / Stk.|
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Tabulator in Zellen eines DataGridView2.794spatzimatzi05.07.14 13:36
Re: Tabulator in Zellen eines DataGridView2.077spatzimatzi06.07.14 12:34
Re: Tabulator in Zellen eines DataGridView2.092sv0001006.07.14 13:22
Re: Tabulator in Zellen eines DataGridView2.222spatzimatzi06.07.14 13:43
Re: Tabulator in Zellen eines DataGridView2.111Kuno6006.07.14 14:07
Re: Tabulator in Zellen eines DataGridView2.073spatzimatzi06.07.14 17:07
Re: Tabulator in Zellen eines DataGridView2.116Yammi90007.07.14 07:46
Re: Tabulator in Zellen eines DataGridView2.089ErfinderDesRades07.07.14 09:51
Re: Tabulator in Zellen eines DataGridView2.177spatzimatzi07.07.14 10:21
Re: Tabulator in Zellen eines DataGridView2.114ErfinderDesRades07.07.14 10:28
Re: Tabulator in Zellen eines DataGridView2.108spatzimatzi07.07.14 11:17
Re: Tabulator in Zellen eines DataGridView2.088ErfinderDesRades07.07.14 11:38
Re: Tabulator in Zellen eines DataGridView2.148DotNetErbse07.07.14 11:38
Re: Tabulator in Zellen eines DataGridView2.088spatzimatzi07.07.14 12:48
Re: Tabulator in Zellen eines DataGridView2.062ErfinderDesRades07.07.14 12:54
Re: Tabulator in Zellen eines DataGridView2.111Kuno6007.07.14 13:11

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel