在gridview的模板列中有个dropdownlist ,它是通过datasource1来绑定。
<asp:TemplateField HeaderText="本地网">
<EditItemTemplate>
<asp:DropDownList ID="ddshudi" runat="server"
DataValueField='<%# bind("rb_pz_bendiwang") %>'
DataSourceID="SqlDataSource1" DataTextField="rb_pz_bendiwang">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:strConnection %>"
SelectCommand="SELECT [rb_pz_num], [rb_pz_bendiwang] FROM [c_pz_daily] WHERE ([rb_pz_num] = @rb_pz_num)">
<SelectParameters>
<asp:QueryStringParameter Name="rb_pz_num" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
</EditItemTemplate>在后台:
public string rb_pz_num;
protected void Page_Load(object sender, EventArgs e)
{
rb_pz_num= "xj2010716";
//SqlDataSource1.SelectParameters["rb_pz_num"].DefaultValue = rb_pz_num;
//((SqlDataSource)GridView2.Rows.FindControl("SqlDataSource1")).SelectParameter.["rb_pz_num"].DefaultValue = rb_pz_num;
((SqlDataSource)GridView2.FindControl("SqlDataSource1")).SelectParameters["rb_pz_num"].DefaultValue = rb_pz_num;总是出现错误:未将对象引用设置到对象的实例
可能是没有获取到sqldatasource1,但是不知道模板当中的sqldatasource1如何才能被获取。
<asp:TemplateField HeaderText="本地网">
<EditItemTemplate>
<asp:DropDownList ID="ddshudi" runat="server"
DataValueField='<%# bind("rb_pz_bendiwang") %>'
DataSourceID="SqlDataSource1" DataTextField="rb_pz_bendiwang">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:strConnection %>"
SelectCommand="SELECT [rb_pz_num], [rb_pz_bendiwang] FROM [c_pz_daily] WHERE ([rb_pz_num] = @rb_pz_num)">
<SelectParameters>
<asp:QueryStringParameter Name="rb_pz_num" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
</EditItemTemplate>在后台:
public string rb_pz_num;
protected void Page_Load(object sender, EventArgs e)
{
rb_pz_num= "xj2010716";
//SqlDataSource1.SelectParameters["rb_pz_num"].DefaultValue = rb_pz_num;
//((SqlDataSource)GridView2.Rows.FindControl("SqlDataSource1")).SelectParameter.["rb_pz_num"].DefaultValue = rb_pz_num;
((SqlDataSource)GridView2.FindControl("SqlDataSource1")).SelectParameters["rb_pz_num"].DefaultValue = rb_pz_num;总是出现错误:未将对象引用设置到对象的实例
可能是没有获取到sqldatasource1,但是不知道模板当中的sqldatasource1如何才能被获取。
我想另外在提个问题:DropDownList的问题!!!
用代码绑定到DropDownList上
if (((DropDownList)e.Row.FindControl("ddshudi")) != null)
{ DropDownList ddshudi = (DropDownList)e.Row.FindControl("ddshudi");
//ddshudi.Items.Clear();
//ddshudi.Items.Add(new ListItem("请选择...", "0"));
//ddshudi.Items.Add(new ListItem("xxx", "1"));
//ddshudi.Items.Add(new ListItem("yyy", "2"));
//ddshudi.Items.Add(new ListItem("zzz", "3"));
有在编辑模板里,在进行编辑时通过SQLDATASOURCE 提取ddshudi的数据库中的值,这样一来DropDownList上显示,我手动绑定的值和从数据库提取的值,DropDownList里始终是有两个相同的(重复)项,我怎样可以删除其中一个?