Sql 使用VB在ASP.NET的多模块GridView中提供多模块信息和Pics

Sql 使用VB在ASP.NET的多模块GridView中提供多模块信息和Pics,sql,asp.net,vb.net,gridview,Sql,Asp.net,Vb.net,Gridview,我正试图建立一个网站,但遇到了一点小麻烦。我的编码知识和悟性是最好的,如果你知道一个更好的方法来做这件事,请通过一切手段让我知道 在我的特色酒吧页面上,我设置了两个GridView。gvPicsRandomBar(仅用于图片)和GVRandomBar(仅用于信息)。每个都有自己的SQLDataSource。我已将其设置为GVRandomBars通过SQLtop命令选择“随机”条的位置。我想做的是让gvPicsRandomBar显示由gvPicsRandomBar选择的同一个“随机”条的图片。两个

我正试图建立一个网站,但遇到了一点小麻烦。我的编码知识和悟性是最好的,如果你知道一个更好的方法来做这件事,请通过一切手段让我知道

在我的特色酒吧页面上,我设置了两个GridView。gvPicsRandomBar(仅用于图片)和GVRandomBar(仅用于信息)。每个都有自己的SQLDataSource。我已将其设置为GVRandomBars通过SQLtop命令选择“随机”条的位置。我想做的是让gvPicsRandomBar显示由gvPicsRandomBar选择的同一个“随机”条的图片。两个gridview都是从同一个表中进行查询,但使用不同的SELECT语句,因为每个gridview都涉及同一表行中的不同项

我想通过从GVRandomBars中读取主键并将该值放入标签(lblRandomBar)中,我将该值用作gvPicsRandomBar的控件,以匹配正确的pic以显示在它自己的gridview中,因为它们都查询相同的数据库,这在某种程度上实现了这一点,但我错了。每当我启动我的网站时,我都会发现“错误”索引超出范围。必须为非负且小于集合的大小。 参数名称:索引”。我只是不确定将此代码放置在何处,即(Event)
lblRandomBar.Text=GVRandomBars.DataKeys(0).Value.ToString()
,这样我就不会出现上述错误

如果我奇迹般地让它工作,就把问题分开 我遇到的一个问题是,主键的值似乎没有传递到lblRandomBar.text。我假设这是因为我不知道如何正确地放置代码
lblRandomBar.Text=GVRandomBars.DataKeys(0).Value.ToString()
有时,当我让它工作时,我确实遇到的另一个问题是,gvPicsRandomBar中显示的图片比我单击搜索按钮时慢了一步。例如,我在下拉列表中单击搜索城市“Austin”,它可能会给我一个主键值45。在我单击下拉列表中的“搜索其他城市”并将页面发回服务器之前,不会显示该主键的图片

主键的值以lblRandomBar.text表示,当前条显示在GVRandomBars中,但在单击搜索按钮并在GVRandomBars中显示另一个“随机”条之前,与录制的条关联的条图片不会显示在gvPicsRandomBar中。因此,我在gvPicsRandomBar中查看的图片来自GVRandomBars中显示的最后一个条形图,而另一个条形图信息当前显示在GVRadnomBars中

我希望在两个GridView中同时拥有相同的条信息和条图片,而不是像我目前在gvPicsRandomBar中的图片那样落后一步。任何帮助都将不胜感激。谢谢

ASP.NET HTML

随机条