Лучше и чище, если вы используете два DataSource
с выбором данных из базы данных и связыванием каждого из них с DropDownList
.Я пытался в своем приложении ASP.NET делать то, что вы хотите, но, к сожалению, у меня есть ошибки: /
Мое единственное решение - не использовать DataSouce
в файле aspx, но в событии DropDownList
SelectedItem
используйте DataContext
и возможно, что тогда вы сможете привязать оба к одному и тому же DataView
, как показано ниже.Я не уверен, но, возможно, вы должны использовать null в DataSource
для сброса GridView
, прежде чем использовать новый источник данных:
protected void btPokaz_Click(object sender, EventArgs e)
{
DataClassesDataContext db = new DataClassesDataContext();
var DzieciGrupa = from p in db.Dzieckos
where p.Grupy.Numer == Convert.ToInt32(this.dropListGrupy.SelectedValue)
orderby p.Nazwisko
select new { p.Imie, p.Nazwisko };
if (DzieciGrupa.Count() == 0) this.Label1.Text = "W " + this.dropListGrupy.SelectedValue.ToString() + " grupie nie ma dzieci zapisanych!";
this.GridGrupy.DataSource = null;
this.GridGrupy.DataSource = DzieciGrupa;
// this.GridView1.DataSourceID = String.Empty;
this.GridGrupy.DataBind();
Попробуйте и скажите, что работает;)