DropDownList1  绑定  SqlDataSource1    AutoPostBack="True"  
DropDownList2  绑定  SqlDataSource2,由  DropDownList1  传入参数,AutoPostBack="True"  
 
GridView1  绑定  SqlDataSource3,由  DropDownList2  传入参数,  
 
现在问题是,GridView1总不能保持最新数据显示,  
想在DropDownList2  或  SqlDataSource2  数据render以后再更新、执行    SqlDataSource3.databind()  
但不知道该如何写,  
请指教,多谢了!

解决方案 »

  1.   

    GridView1.DataSource = SqlDataSource3;
    GridView1.Databind;
      

  2.   

    在DropDownList2的selectedindexchanged事件中绑定GridView1不就可以了吗?
      

  3.   

    那就把GridView1的绑定写进render里面
      

  4.   

    DropDownList2改变,Gridview当然会改变,
    关键时DropDownList1改变时,DropDownList2会改变,但Gridview不是每次都能及时改变的。
    代码如下:
    <asp:SqlDataSource ID="college" runat="server" ConnectionString="<%$ ConnectionStrings:newdata-cetConnectionString %>"
                    SelectCommand="SELECT [dm_mc], [xy_dm] FROM [a_xy]"  >
              </asp:SqlDataSource>   <asp:SqlDataSource ID="depart" runat="server" ConnectionString="<%$ ConnectionStrings:newdata-cetConnectionString %>"
                      SelectCommand="SELECT [zy_dm], [dm_mc] FROM [a_zy] where [zy_dm] Like @zy_dm" >
                      <SelectParameters>
                          <asp:ControlParameter ControlID="DropDownList1" Name="zy_dm" PropertyName="Value" />
    </SelectParameters>
                  </asp:SqlDataSource>
                  
                  
            <asp:SqlDataSource ID="detail" runat="server" ConnectionString="<%$ ConnectionStrings:newdata-cetConnectionString %>"
                SelectCommand="SELECT [姓名], [ID], [学号], [证件号码], [报考级别], [fee] FROM [dida_cet] where 报考级别=@band) order by ID">
                <SelectParameters>
                    <asp:ControlParameter ControlID="DropDownList2" DefaultValue="" Name="band" PropertyName="SelectedValue" />
                </SelectParameters>
            </asp:SqlDataSource>
    <asp:DropDownList ID="DropDownList1"
                    runat="server" DataSourceID="college" DataTextField="dm_mc" DataValueField="xy_dm" AutoPostBack=true>
                </asp:DropDownList>
                
    <asp:DropDownList ID="DropDownList2" runat="server"
                      DataSourceID="depart" DataTextField="dm_mc" DataValueField="zy_dm" AutoPostBack=true >
                  </asp:DropDownList>        <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False"
                DataKeyNames="ID" DataSourceID="detail" Width="300" AllowSorting="True">
                <Columns>
                    <asp:BoundField DataField="ID" HeaderText="流水号" ReadOnly="True" SortExpression="ID" />
                </Columns>
            </asp:GridView>
      

  5.   

    搞掂
    protected void tester_college_SelectedIndexChanged(object sender, EventArgs e)
        {
            depart.DataBind();
            tester_spec.DataBind();
            detail.DataBind();
            GridView1.DataBind();
        }