You are trying to tell the ListBox to be databound to an entire set of fields represented by the SteamURL
entity, but the Listbox (which has only a single column that it can display) has no idea which one of the fields to display so it's just showing a default string to represent "an object is bound to this entry in the list".
you need to tell the ListBox what the DisplayMember
property is.
e.g if there is a property on a SteamURL
called URL
(just guessing) then before this line
listBox1.DataSource = urlList;
put this:
listBox1.DisplayMember="URL";
and it should work. I second all the recommendations above by the way, do not return or bind to an IQueryable in this case - you should transform urlList using ToList() or similar first:
var query= from SURL in db.SteamURLs
where obj.UserID == SURL.uID
select SURL;
//this "materialises" the query and fetches the results back from the database.
var urlList= query.ToList();
//This means that you won't inadvertently trigger another database access by referring to urlList later on.
dataGridView1.DataSource = urlList;
return urlList;