所以,我有一个GridView和2个DataSources使用" wizard" (GridViewTasks - > NewDataSource)
我的页面上有一个CheckBox ...当checked = true时我想将GridSource1用于我的GridView,当check = false时,DataSource2。
我尝试在我的代码隐藏中添加CheckBox_CheckedChanged事件:
Func
但这不起作用。 有什么建议?
我知道我可以进入我的代码隐藏并完成所有操作"手动" (SqlDataConnection-> DataAdapter-> DataTable-> GridViewDataSource)但是有一种方法,当您使用GridView向导创建DataSource时,在CheckBox或ButtonClick事件上更改您的GridView的数据源?
由于
最佳
ķ
答案 0 :(得分:0)
我曾经使用过这种技术;不要分配DatasourceID,然后在page_init中设置初始数据加载,然后执行:
protected void CheckBox_CheckedChanged(object sender, EventArgs e)
{
if (CheckBox.Checked == true)
{
gvPredbiljezbe.DataSourceID = dsGridView1.ID;
gvPredbiljezbe.DataBind();
}
else
{
gvPredbiljezbe.DataSourceID = dsGridView2.ID;
gvPredbiljezbe.DataBind();
}
}
这样的事情;交换数据源的ID没有问题(有一段时间,所以我认为你使用ID,而不是ClientID属性)。
答案 1 :(得分:0)
确保为您的复选框设置AutoPostBack =“true”。
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
CheckBox checkbox = (CheckBox)sender;
if (checkbox != null)
gvPredbiljezbe.DataSourceID = checkbox.Checked ? dsGridView1.ID : dsGridView2.ID;
}