[Thema] C#2 DataGridView Scrollbar immer anzeigen lassen

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von PoweRanga, 30. April 2008 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 30. April 2008
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    C#2 DataGridView Scrollbar immer anzeigen lassen

    Guten Tag,
    Ich habe in meinem C# Programm ein kleines DataGridView drin, das so funktioniert wie es soll...

    Edit:

    1. Kann man die Vertikale Scrollbar immer anzeigen lassen, auch wenn sie nicht benötigt wird?

    2. Hat sich erledigt...
    Spoiler
    Kann man diese unnötige Spalte (rot markiert) irgendwie löschen?
    Bild

    Vielen Dank für die Hilfe

    BW ist für jede helfende Antwort drin!
     
  2. 30. April 2008
    AW: C#2 Fragen zum Datagridview

    1.
    Ja kann man.

    Unter Eigenschaften RowHeaderVisible auf false setzen.

    2. Wieso willst du die Scrollbar immer anzeigen??Sinn?

    Würd ich mal im Objekt selber suchen da gibts vllt eine Funktion Properti was die Scrollbar immer anzeigt.

    Ansonsten gehts auch mit HScrollBar und VScrollBar Control...
     
  3. 30. April 2008
    AW: C#2 Fragen zum Datagridview

    Der Sinn das die Scrollbar immer angezeigt wird ist nur ein optischer.... Ich find das es verdammt hässlich aussieht wenn da ne Lücke ist

    Edit:
    BW haste d3athb0t, hab dir damit sogar nen neuen grünen Bobbel verschafft XD
     
  4. 1. Mai 2008
    AW: C#2 DataGridView Scrollbar immer anzeigen lassen

    Soweit ich weiß geht das nur über eine abgleitete Klasse der DataGridklasse.
    Siehe hier:
    Link

    Hab mir mal die Mühe gemacht und dir kommentierten Code geschrieben der bei mir zu 100% funktioniert hat.
    Code:
     public class myDataGrid : DataGrid
     {
     private int caption = 21; //falls eine menuleiste angezeigt wird
     private int border = 2; //bei BorderStyle.Fixed3D
    
     public myDataGrid()
     {
     VertScrollBar.Visible = true;
     VertScrollBar.VisibleChanged += new EventHandler(ShowVertScrollBar); //eventhandler festlegen
     }
    
     private void ShowVertScrollBar(object sender, EventArgs e)
     {
     if (!VertScrollBar.Visible)
     {
     /* location und größe der scrollbar festlegen; border und caption anpassen wenn notwendig */
     VertScrollBar.Location = new Point(ClientRectangle.Width - VertScrollBar.Width - border, caption);
     VertScrollBar.Size = new Size(VertScrollBar.Width, ClientRectangle.Height - caption - border);
    
     VertScrollBar.Show();
     }
     }
     }
    
     private void frmMain_Load(object sender, EventArgs e)
     {
     myDataGrid datagrid = new myDataGrid(); //instanz der neuen klasse erstellen
    
     /* daten des datagrid anpassen */
     datagrid.Location = new System.Drawing.Point(0, 0);
     datagrid.Size = new System.Drawing.Size(240, 150);
     datagrid.Name = "myDataGrid";
     
     this.Controls.Add(datagrid); //datagrid zur Mainform hinzufügen 
     }
    
     
  5. 1. Mai 2008
    AW: C#2 DataGridView Scrollbar immer anzeigen lassen

    Mhhh da es für die Schule ist und wir da nichts allzu anspruchsvolles machen wird sie wohl denken ich würds einfach kopiert haben wenn ich das benutz

    Naja danke für die Mühe und BW haste aber ich hab mir doch was anderes überlegt....

    Ich mach einfach die erste Spalte etwas breiter und sobald die Scrollbar benötigt wird soll die erste Spalte kleiner gemacht werden

    Problem ist nur das ich rumprobiert hab, es aber nicht hinkrieg ^^
    Bräuchte also wieder hilfe
     
  6. 4. Mai 2008
    AW: C#2 DataGridView Scrollbar immer anzeigen lassen

    Mhh wenn die Scrollbar nicht da ist, da ist keine Lücke bei mir.
    Es sei denn du hast halt nicht das DataGrid gefüllt..

    Außerdem solltest du den AutoSizeMode mit Fill (irgendwo unter Properties) dann wird die ganze Zeile gefüllt ohne das dann eine "Lücke" entsteht.
     
  7. 4. Mai 2008
    AW: C#2 DataGridView Scrollbar immer anzeigen lassen

    Danke danke hat sich nun erledigt
     
  8. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.