vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 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
Probleme mit dem DataGridView 
Autor: anpoit00
Datum: 03.11.08 17:55

Hi,
ich habe ein Problem mit dem DataGridView.
Es sollen die Bilder nacheinander in DataGridView eingeführt werden.
Leider bekomme ich letzte Zeile mit Kreuzen.
Zu zweiten will ich, dass man die Zellegrösse nicht verändern darf.
Danke
Private Sub LoadImages()
 
    Dim numColumnsForWidth As Integer
    Dim numRows As Integer
    Dim numImagesRequired As Integer
    Dim numGeneratedCells As Integer
    Dim DataGridViewColumn As DataGridViewImageColumn
    Dim columnIndex As Integer
    Dim rowIndex As Integer
    Dim img As Image
    Dim dGridViewCellStyle As DataGridViewCellStyle
 
    Dim index As Integer
 
    Try
 
      'Ist die Liste leer?
      If _files.Count = 0 Then
        Return
      End If
 
      'Ist das Fenster minimiert?
      If Me.WindowState = FormWindowState.Minimized Then
        Return
      End If
 
      ' Element von alten Dateien befreien
      dataViewImages.Rows.Clear()
      dataViewImages.Columns.Clear()
 
      'Anzahl der Spalten ermitteln
      numColumnsForWidth = CInt((dataViewImages.Width - 10) / (_imageSize + 20))
      numRows = 0
      numImagesRequired = _files.Count
 
 
      numRows = CInt(Math.Round(numImagesRequired / numColumnsForWidth + 0.5))
 
      '' Wenn eine Reihe fehlt
      'If (numImagesRequired Mod numColumnsForWidth > 0) Then
      '  numRows += 1
      'End If
 
      ' Catch when we have less images than the maximum number of columns for 
      ' the DataGridView width
      If (numImagesRequired < numColumnsForWidth) Then
        numColumnsForWidth = numImagesRequired
      End If
 
      numGeneratedCells = numRows * numColumnsForWidth
 
      ' Dynamically create the columns
      For index = 0 To numColumnsForWidth - 1
        DataGridViewColumn = New DataGridViewImageColumn()
        dataViewImages.Columns.Add(DataGridViewColumn)
        dataViewImages.Columns(index).Width = _imageSize + 20
      Next
 
      ' Create the rows
      For index = 0 To numRows - 1
        dataViewImages.Rows.Add()
        dataViewImages.Rows(index).Height = _imageSize + 20
      Next
 
      columnIndex = 0
      rowIndex = 0
 
      For index = _currentStartImageIndex To _currentStartImageIndex + _
        numImagesRequired - 1
 
        ' Load the image from the file and add to the DataGridView
        img = ResizeImage(_files(index), _imageSize, _imageSize)
        dataViewImages.Rows(rowIndex).Cells(columnIndex).Value = img
        dataViewImages.Rows(rowIndex).Cells(columnIndex).ToolTipText = _
          Path.GetFileName(_files(index))
 
        ' Have we reached the end column? if so then start on the next row
        If columnIndex = numColumnsForWidth - 1 Then
          rowIndex += 1
          columnIndex = 0
 
        Else
          columnIndex += 1
        End If
      Next
 
      ' Blank the unused cells
      If numGeneratedCells > numImagesRequired Then
 
        For index = 0 To numGeneratedCells - numImagesRequired - 1
 
          dGridViewCellStyle = New DataGridViewCellStyle()
          dGridViewCellStyle.NullValue = Nothing
          'dGridViewCellStyle.SelectionBackColor = Color.Gray
          dGridViewCellStyle.Tag = "Blank"
          dataViewImages.Rows(rowIndex).Cells(columnIndex + index).Style = _
            dGridViewCellStyle
        Next
      End If
 
      dataViewImages.Rows.RemoveAt(dataViewImages.Rows.Count - 1)
 
    Catch E As Exception
      'MsgBox(E.Message)
    End Try
 
 
  End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Probleme mit dem DataGridView963anpoit0003.11.08 17:55
Re: Probleme mit dem DataGridView571anpoit0004.11.08 17:27

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