UserControls的部分呈现

时间:2014-02-17 08:35:47

标签: asp.net webforms .net-4.5

我有两个UserControls uc1和uc2,uc1包含GricView,uc2里面有FormView。 uc2嵌入在uc1中,如

UC1:

<div id=grid>
 <!--GridView-->
</div>
<div id=formview>
 <uc2:asd ID=asdasd/> <!-- this has the formview -->
</div>

问题是当调用uc1时,所有事件,例如FormView的OnDataBound也被调用。

我怎样才能避免这种情况,或者我做某事(可怕的)错误......

修改

uc1包含在主页中,说Default.aspx

又一个编辑

Default.aspx的

<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">

   <uc1:asd ID="ucontrol1" runat="server"/>

</asp:Content>

uc1

的代码
<div class="gridViewDiv">
    <asp:GridView
        DataKeyNames="id"
        ID="gv"
        ItemType="ef.sometable"
        runat="server"        
        SelectMethod="gv_GetAll" 
        OnRowCommand="gv_RowCommand">
      ...
    </asp:GridView>
</div>
<div>
   <uc2:asd ID="UserControlForm1" runat="server" Visible="false"  />
</div>

uc2

的代码
<asp:FormView 
    ID="fv" DataKeyNames="id"
    ItemType="ef.sometable" 
    runat="server"
    SelectMethod="fv_GetItem"
    UpdateMethod="fv_UpdateItem"
    InsertMethod="fv_InsertItem"
    OnItemCommand="fv_onItemCommand"
    OnInit="FormViewControl_Init"
    OnDataBound="FormViewControl_DataBound"
    >

uc2最初是隐藏的,现在当我加载Default.aspx FormViewuc2中的事件被称为我怎样才能避免这种情况或其正常行为...... 。

0 个答案:

没有答案