Ergebnis 1 bis 11 von 11

Thema: Fragen / Lern Thread

  1. #1
    VIP Team
    Registriert
    May 2015
    Beiträge
    1,024
    Gefällt mir!
    862
    Du gefällst: 374

    Fragen / Lern Thread

    Hi,

    In diesem Thread werde ich meine Fragen zu C# stellen. Wenn ihr wollt könnt ihr mir beim lösen der Probleme helfen.

    1.) Daten speichern in C# (Lösung: DoriDB*)
    2.) Buttons zur Datagridview hinzufügen

    Ich möchte gerne mehrere Buttons zu einer Datagridview hinzufügen.

    Ich habe die Spalten Host, Username, Password, SFT, Type & Actions

    Ich möchte jetzt zu jeder Reihe in Actions Buttons hinzufügen (edit, delete)

    Hab natürlich schon google bemüht aber irgendwie kam dabei nichts passendes raus.

    Code

    Code:
    DataGridViewButtonColumn buttonColumn = new DataGridViewButtonColumn();
                        buttonColumn.HeaderText = "";
                        buttonColumn.Name = "Delete";
                        buttonColumn.Text = "Delete";
                        buttonColumn.UseColumnTextForButtonValue = false;
    
                        
    
                        row["Actions"] = buttonColumn;
    Das sieht dann aber so aus.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken 2016-09-08_0631_png  
    Geändert von darkness (08.09.2016 um 05:32 Uhr)
    .:: Well, duh! ::.

  2. #2
    Junior Avatar von Silentkill
    Registriert
    May 2016
    Beiträge
    43
    Gefällt mir!
    75
    Du gefällst: 77
    Ich nutze recht gerne SQLite Datenbanken in Verbindung mit System.Data.SQLite.

  3. #3
    VIP Team
    THEMENSTARTER


    Registriert
    May 2015
    Beiträge
    1,024
    Gefällt mir!
    862
    Du gefällst: 374
    Kennst du ein gutes Tutorial dazu? Wie ich die Datenbank installiere und so?
    .:: Well, duh! ::.

  4. #4
    Junior Avatar von Silentkill
    Registriert
    May 2016
    Beiträge
    43
    Gefällt mir!
    75
    Du gefällst: 77
    Habe die beiden hier damals genutzt um den Grundaufbau zu verstehen:
    Getting started with SQLite in C# ? Tigran's Blog
    C# und SQLite – Eine kleine Einführung | Thomas Belsers Homepage

    Wie man Querys erstellt wirst du sicherlich wissen..

    Hier noch eine sehr gute Tutorialreihe auf Youtube (zu C# allgemein, nicht SQLite)
    https://www.youtube.com/playlist?lis...E421AE8BCEBA4A

  5. #5
    Junior Avatar von BASF
    Registriert
    Jun 2015
    Alter
    41
    Beiträge
    116
    Gefällt mir!
    225
    Du gefällst: 104
    Hi,

    https://www.youtube.com/watch?v=9Pbg-XFqqfA

    C# am besten Daten verwaltet ...
    wenn es das ist was du erfragen willst ... deine Fragestellung find ich etwas schwammig
    Geändert von BASF (08.09.2016 um 02:00 Uhr)

  6. #6
    Junior Avatar von Silentkill
    Registriert
    May 2016
    Beiträge
    43
    Gefällt mir!
    75
    Du gefällst: 77
    Zitat Zitat von SpongeBob Schwammkopf Beitrag anzeigen
    Ich möchte jetzt zu jeder Reihe in Actions Buttons hinzufügen (edit, delete)
    Code:
    {
                DataGridViewButtonColumn btn = new DataGridViewButtonColumn();
                dataGridView1.Columns.Add(btn);
    
                btn.HeaderText = "Actions";
                btn.Text = "delete";
                btn.Name = "btnDelete";
                btn.UseColumnTextForButtonValue = true; //(wahlweise)
    }
    Wobei sich für deinen Zweck ein BindingNavigator besser eignen würde. Dann brauchst du garkeine Buttons einfügen sondern hast einfach einen Edit und einen Speicher Button, der für das ganze Grid gilt.
    Gruß

  7. Diesen Mitgliedern gefällt dieser Beitrag:


  8. #7
    VIP Team
    THEMENSTARTER


    Registriert
    May 2015
    Beiträge
    1,024
    Gefällt mir!
    862
    Du gefällst: 374
    Danke.

    Code:
    DataTable table = new DataTable();
    
                table.Columns.Add("Host");
                table.Columns.Add("Username");
                table.Columns.Add("Password");
                table.Columns.Add("SFTP");
                
                DataGridView grid = new DataGridView();
                grid.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
                grid.Dock = DockStyle.Fill;
    
                DataGridViewButtonColumn btn = new DataGridViewButtonColumn();
                grid.Columns.Add(btn);
    
                btn.HeaderText = "Actions";
                btn.Text = "delete";
                btn.Name = "btnDelete";
                btn.UseColumnTextForButtonValue = true; //(wahlweise)
    Das "Problem" ist das der Button jetzt am Anfang der "Tabelle" ist. Ich hätte die Buttons aber gerne am Ende also rechts.
    .:: Well, duh! ::.

  9. #8
    Junior Avatar von Silentkill
    Registriert
    May 2016
    Beiträge
    43
    Gefällt mir!
    75
    Du gefällst: 77
    Zuerst das DataTable einfügen und erst danach die Buttons hinzufügen.
    Code:
      
    {
                DataTable table = new DataTable();
    
                table.Columns.Add("Host");
                table.Columns.Add("Username");
                table.Columns.Add("Password");
                table.Columns.Add("SFTP");
                
                DataGridView grid = new DataGridView();
                grid.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
                grid.Dock = DockStyle.Fill;
    
                grid.DataSource = table;
    
                DataGridViewButtonColumn btn = new DataGridViewButtonColumn();
                grid.Columns.Add(btn);
    
                btn.HeaderText = "Actions";
                btn.Text = "delete";
                btn.Name = "btnDelete";
                btn.UseColumnTextForButtonValue = true; //(wahlweise)
    }
    Geändert von Silentkill (09.09.2016 um 13:57 Uhr)

  10. #9
    VIP Team
    THEMENSTARTER


    Registriert
    May 2015
    Beiträge
    1,024
    Gefällt mir!
    862
    Du gefällst: 374
    Danke. Aber der Button ist immer noch am Anfang ...

    Btw. Die Rows sind bearbeitbar (ohne speichern) kann man das irgendwie verhindern?
    Geändert von darkness (09.09.2016 um 14:49 Uhr)
    .:: Well, duh! ::.

  11. #10
    Junior Avatar von Silentkill
    Registriert
    May 2016
    Beiträge
    43
    Gefällt mir!
    75
    Du gefällst: 77
    Geht bei mir bestens, keine Ahnung was du anders machst.

    Zitat Zitat von SpongeBob Schwammkopf Beitrag anzeigen
    kann man das irgendwie verhindern?
    Ja: dataGridView.ReadOnly = true;

  12. #11
    VIP Team
    THEMENSTARTER


    Registriert
    May 2015
    Beiträge
    1,024
    Gefällt mir!
    862
    Du gefällst: 374
    Komisch. Hier mal der komplette Code.

    Code:
    private void redrawServerManagerDataTable()
            {
    
                DataTable table = new DataTable();
    
                table.Columns.Add("Host");
                table.Columns.Add("Username");
                table.Columns.Add("Password");
                table.Columns.Add("SFTP");
                
                DataGridView grid = new DataGridView();
                grid.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
                grid.Dock = DockStyle.Fill;
                grid.ReadOnly = true;
    
                grid.DataSource = table;
    
                DataGridViewButtonColumn btn = new DataGridViewButtonColumn();
                grid.Columns.Add(btn);
    
                btn.HeaderText = "Actions";
                btn.Text = "delete";
                btn.Name = "btnDelete";
                btn.UseColumnTextForButtonValue = true; //(wahlweise)
    
                string path = "{0}";
                path = String.Format(path, AppDomain.CurrentDomain.BaseDirectory + "database\\");
                DoriDB db = new DoriDB();
                db.setDatabasesStorageDirectory(path);
                db.openDatabase("uploadmonkey");
                db.setTable("servers");
    
                string[] servers = db.getBlobs("server_*.blob");
                foreach (string server in servers)
                {
    
                    try
                    {
    
                        string buffer = System.IO.File.ReadAllText(server);
                        dynamic data = JsonConvert.DeserializeObject(buffer);
    
                        DataRow row = table.NewRow();
    
                        row["Host"] = (string)data.host;
                        row["Username"] = (string)data.username;
                        row["Password"] = (string)data.password;
                        /*
                        DataGridViewButtonColumn buttonColumn = new DataGridViewButtonColumn();
                        buttonColumn.HeaderText = "";
                        buttonColumn.Name = "Delete";
                        buttonColumn.Text = "Delete";
                        buttonColumn.UseColumnTextForButtonValue = false;
    
                        
    
                        row["Actions"] = buttonColumn;
                        */
                        
                        if ((int)data.sftp == 1)
                        {
                            row["SFTP"] = "yes";
                        }
                        else
                        {
                            row["SFTP"] = "no";
                        }
    
                        table.Rows.Add(row);
    
                    }
                    catch (Newtonsoft.Json.JsonException e)
                    {
    
                    }
    
                }
    
                this.Controls.Add(grid);
    
    
            }
    .:: Well, duh! ::.

Ähnliche Themen

  1. Thread
    Von PromillePanzer im Forum IntelliTool.it
    Antworten: 3
    Letzter Beitrag: 06.03.2019, 15:56
  2. Funny pictures thread
    Von The Don im Forum Gefällt mir!
    Antworten: 179
    Letzter Beitrag: 16.02.2017, 00:22
  3. Thread bumping
    Von Phil im Forum Webmaster Daily Talk & OffTopic
    Antworten: 0
    Letzter Beitrag: 24.07.2015, 14:17

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
SzeneBox.org... im Mittelpunkt der Szene!
© since 2015 szeneBOX.org - All Rights Reserved
Domains: www.szenebox.org