Browse Source

Finally dubble click on a song plays a song

Janco Kock 10 years ago
parent
commit
76f5753a6e

+ 12 - 9
.gitattributes

@@ -25,13 +25,13 @@ namespace MusicPlayer
             audio = new AudioHandler();
             table = new SongsTable();
             form.SongsTableView.DataSource = table;
-
+            form.SongsTableView.Columns[3].Visible = false;
             Populate();
         }
 
         private void Populate()
         {
-            form.AlbumListView.Items.Add(" Alle albums");
+            form.AlbumListView.Items.Add("Alle albums");
             foreach (Album a in this.api.GetAlbums())
             {
                 form.AlbumListView.Items.Add(a.albumnaam);
@@ -43,21 +43,24 @@ namespace MusicPlayer
                 form.ArtistListBox.Items.Add(a.naam);
 
             }
-            
-            table.Add(new Song("102", "Test Song 1", "Test Album 1", "Test Artist 1", api));
-      
-            table.Add(new Song("104", "Test Song 2", "Test Album 2", "Test Artist 2", api));
         }
 
         public void ArtistFilter(string artist)
         {
-            System.Console.Write(artist);
+            table.Clear();
+            api.GetSongsByArtist(artist).ForEach(s =>
+            {
+                table.Add(s);
+            });
         }
 
         public void AlbumFilter(string album)
         {
-            System.Console.Write(album);
-
+            table.Clear();
+            api.GetSongsByAlbum(album).ForEach(s =>
+            {
+                table.Add(s);
+            });
         }
     }
 

+ 1 - 0
MusicPlayer/MusicPlayer/MainForm.Designer.cs

@@ -65,6 +65,7 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.SongsTableView.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
             this.SongsTableView.BackgroundColor = System.Drawing.SystemColors.Control;
+            this.SongsTableView.AutoGenerateColumns = true;
             this.SongsTableView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
             this.SongsTableView.Location = new System.Drawing.Point(12, 153);
             this.SongsTableView.MultiSelect = false;

+ 7 - 3
MusicPlayer/MusicPlayer/MainForm.cs

@@ -77,13 +77,17 @@ namespace MusicPlayer
         private void AlbumListView_SelectedIndexChanged(object sender, EventArgs e)
         {
             if(AlbumListView.SelectedItems.Count != 0)
-                main.AlbumFilter(AlbumListView.SelectedItems[0].ToString());
+                main.AlbumFilter(AlbumListView.SelectedItems[0].Text);
         }
 
         private void SongsTableView_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
         {
-            main.audio.Play(SongsTableView.CurrentRow.DataBoundItem as Song);
-
+            SongsTable s = new SongsTable();
+            var drv = SongsTableView.SelectedRows[0].DataBoundItem as DataRowView;
+            var row = drv.Row as DataRow;
+            s.ImportRow(row);
+            System.Console.WriteLine((s.Rows[0][3] as Song).SongID);
+            main.audio.Play((s.Rows[0][3] as Song));
         }
     }
 }

+ 2 - 1
MusicPlayer/MusicPlayer/MainForm.resx

@@ -15,11 +15,12 @@ namespace MusicPlayer
             this.Columns.Add("Naam", typeof(string));
             this.Columns.Add("Album", typeof(string));
             this.Columns.Add("Artiest", typeof(string));
+            this.Columns.Add("song", typeof(Song));
         }
 
         public void Add(Song s)
         {
-            this.Rows.Add(s.Name, s.Album, s.Artist);
+            this.Rows.Add(s.Name, s.Album, s.Artist, s);
         }
             
     }

+ 0 - 0
MusicPlayer/MusicPlayer/Year.cs