1. #1
    Lt. Junior Grade
    Dabei seit
    Mai 2011
    Beiträge
    352

    [C#] WPF - DataGrid zeilenweise auslesen

    Hallo,

    ich hab in einem WPF-Projekt ein DataGrid mit 4 Spalten und n Zeilen. Die Daten kommen von MS SQL CE 3.5. Eine der Spalten ist eine CheckBox, die anderen sind Textboxen. Mit folgendem Code kann ich auf die gerade selektierte Zeile zugreifen:

    Code:
    private void DataGrid1_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
    {
        FrameworkElement element_2 = DataGrid1.Columns[2].GetCellContent(e.Row);
        if (element_2.GetType() == typeof(CheckBox))
        {
            var _IsChecked = ((CheckBox)element_2).IsChecked;          
            //[..]
        }
    
        FrameworkElement element_3 = DataGrid1.Columns[3].GetCellContent(e.Row);
        if (element_3.GetType() == typeof(TextBlock))
        {
            var _Text = ((TextBlock)element_3).Text;
            //[..]
        } 
    }
    Kann ich auch irgendwie in einer Schleife ALLE Zeilen durchlaufen? Ich denke mir, dass ich im Beispiel oben doch nur das e.Row ersetzen müsste, aber ich weiß nicht wie. Ich hab schon einige Stunden mit Suchen verbracht, aber leider nichts passendes gefunden. Ist das vielleicht so einfach, dass es dafür keine gescheiten Tutorials gibt oder finde ich nichts weil das so kompliziert ist?

    Besten Dank im Voraus!

    Sheldon
    CPU Intel 2600K 4x4,5 GHz 1,35V Kühler EKL Alpenföhn Nordwand GPU nVidia GTX 570 925/1850/2000 1,150V RAM Corsair Vengeance 16 GB (4x4) DDR3 1600 MHz 1,5V Sound Creative Sound Blaster X-Fi XtremeGamer SSD Intel SSD 320 Series 160GB Keyboard Logitech G15 (green LED-Mod) Mouse Roccat Kone Max Customisation OS Microsoft Windows 7 Home Premium Laptop 13,3" Macbook Air Mid 2011 Konsolen Xbox 360 + Kinect / Wii / PSP 1004 / PSP 2004 Telefon iPhone 4 32 GB MP3-Player iPod Touch 4G 64 GB

  2. Anzeige
    Logge dich ein, um diese Anzeige nicht zu sehen.
  3. #2
    Cadet 4th Year
    Dabei seit
    Apr 2010
    Beiträge
    99

    [C#] AW: WPF - DataGrid zeilenweise auslesen

    Du brauchst nur die Items mit einer ForEach schleife durch laufen lassen.

    Beispiel (ungetest):
    Code:
                foreach (var item in DataGrid1.Items)
                {
                    var element = DataGrid1.Columns[2].GetCellContent(item);
                    if (element is CheckBox)
                    {
                        var _IsChecked = (element as CheckBox).IsChecked;
                        //[..]
                    }
    
                    element = DataGrid1.Columns[3].GetCellContent(item);
                    if (element is TextBlock)
                    {
                        var _Text = (element as TextBox).Text;
                        //[..]
                    } 
                }

  4. #3
    Fleet Admiral
    Dabei seit
    Mär 2006
    Beiträge
    14.412

    [C#] AW: WPF - DataGrid zeilenweise auslesen

    Hab noch nicht mit einem DataGrid gearbeitet, aber ich würde schätzen, dass man via Items darauf zugreifen kann...

    Das MSDN kennst du? http://msdn.microsoft.com/de-de/libr....datagrid.aspx

  5. #4
    Lt. Junior Grade
    Ersteller dieses Themas

    Dabei seit
    Mai 2011
    Beiträge
    352

    [C#] AW: WPF - DataGrid zeilenweise auslesen

    @UnKnOwN_86: Vielen Dank, das ist genau das was ich mir vorgestellt habe.
    CPU Intel 2600K 4x4,5 GHz 1,35V Kühler EKL Alpenföhn Nordwand GPU nVidia GTX 570 925/1850/2000 1,150V RAM Corsair Vengeance 16 GB (4x4) DDR3 1600 MHz 1,5V Sound Creative Sound Blaster X-Fi XtremeGamer SSD Intel SSD 320 Series 160GB Keyboard Logitech G15 (green LED-Mod) Mouse Roccat Kone Max Customisation OS Microsoft Windows 7 Home Premium Laptop 13,3" Macbook Air Mid 2011 Konsolen Xbox 360 + Kinect / Wii / PSP 1004 / PSP 2004 Telefon iPhone 4 32 GB MP3-Player iPod Touch 4G 64 GB

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •