Max Kirsch
Max Kirsch

Reputation: 461

UpdatePanel with Button / LinkButton doesnt work

Im trying to resolve an issue with a button / link-button (both doesnt work). The problem is the following:

I have a navigation menu where the user can choose the "tab" (view of Multiview) where he wants to be redirected to. In this menu i have some buttons / link-buttons which should update the updatepanel. But it doesnt do that - it always updates the whole page.

Some of my ASCX-Code:

    <div class="row">
                <label style="margin-left: 15px">Menu</label><br />
                <div class="col-sm-4 col-md-3 sidebar">
                    <div class="mini-submenu">
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                    </div>
                    <div class="list-group">
                        <span class="list-group-item active">Woundmanagement

                            <span class="pull-right" id="slide-submenu">
                                <i class="fa fa-times"></i>
                            </span>
                        </span>
                          <asp:Button ID="Button_1" runat="server" Text="Wundbeschreibung" CssClass="list-group-item" OnClick="nav_btn_1_Click" />
...
more items in the dropdownmenu

</div>...

The event which should be fired when clicking the button:

protected void nav_btn_1_Click(object sender, EventArgs e)
        {
            MultiView1.ActiveViewIndex = 1;

        }

I searched for 2 hours now and tried every possible solution - what i tried until now:

This way my button work, but still the page is reloaded

if i click the button now, nothing happens.

I dont really know what i can further try to make it work, would be great if someone of you guys got an idea! :)

Upvotes: 0

Views: 1011

Answers (1)

mafirat
mafirat

Reputation: 287

I don't understand why you didn't share your updatepanel aspx code. Triggers tag inside update panel not before or after it.

<script runat="server">
   protected void Button1_Click(object sender, EventArgs e)
   {
     Label1.Text = "Refreshed at " + DateTime.Now.ToString();
   }
</script>

<asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
            <asp:Label ID="Label1" runat="server" Text="Panel created."></asp:Label>
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="Button1" />
        </Triggers>
    </asp:UpdatePanel>
    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /> 
</div> 

If trigger objects will be inside of UpdatePanel, you should set ChildrenAsTrigger as true. And if your update panel in a ContentPlaceHolder this article will be useful for you. https://msdn.microsoft.com/tr-tr/library/bb398864(v=vs.100).aspx

Upvotes: 1

Related Questions