Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > MultiView и ContentPlaceHolder


Автор: Neith 3.1.2010, 22:12
Люди, помогите пожалуйста! я юзаю мастерпэйдж и контенты для отображения различных страниц сайта. ну и в один контент запихнул мультивью. а отображаемые view внутри multiview не меняются, отображается дефолтный. должны менятся по клику на кнопки. может кто знает что такое?

ну вот как-то так это выглядит:
Код

<asp:Content ID="Content2" ContentPlaceHolderID="main" runat="server">
 
    <asp:MultiView ID="Pages" runat="server">

        <asp:View ID="News" runat="server">
         </asp:View> 

        <asp:View ID="Articles" runat="server">
        </asp:View>

  </asp:MultiView> 
  
  
  </asp:Content>

Автор: 1stain 3.1.2010, 22:34
Цитата(Neith @  3.1.2010,  22:12 Найти цитируемый пост)
ну вот как-то так это выглядит:

по поводу всего остального ты предлагаешь догадаться методом телепатии? 
(покажи реальную разметку и код класса страницы)

Автор: Neith 3.1.2010, 22:51
сорри.
вот класс страницы:
Код

public partial class Page1 : System.Web.UI.Page
{
    

   protected void Page_Load(object sender, EventArgs e)
    {
        Pages.SetActiveView(News);
        
    }

 


    protected void NewsButton_Click(object sender, EventArgs e)
    {
        Pages.ActiveViewIndex = 0; 
        
    }

    protected void ArticleButton_Click(object sender, EventArgs e)
    {
        Pages.ActiveViewIndex = 1;
        
    }

}



вот разметка:
Код

<asp:Content ID="Content2" ContentPlaceHolderID="main" runat="server">

<asp:ImageButton ID="NewsButton" runat="server" OnClientClick="NewsButton_Click" AlternateText="News" ImageUrl="mybutt1.gif" />
<asp:ImageButton ID="ArticleButton" runat="server" OnClientClick="ArticleButton_Click" AlternateText="art" ImageUrl="mybutt2.gif"/>
 
    <asp:MultiView ID="Pages" runat="server">

        <asp:View ID="News" runat="server">
           <asp:Label ID="Label11" runat="server" Text="Label1"></asp:Label>
         </asp:View> 

        <asp:View ID="Articles" runat="server">
           <asp:Label ID="Label12" runat="server" Text="Label2"></asp:Label>
        </asp:View>

  </asp:MultiView> 
  
  
  </asp:Content>

Автор: 1stain 3.1.2010, 23:18
выкинуть из Page_Load Pages.SetActiveView(News);
добавить в <asp:MultiView ID="Pages" runat="server"> ActiveViewIndex="0"

Автор: Neith 3.1.2010, 23:27
не помогло, все так же отображается только первый view=(
а если сделать <asp:MultiView ID="Pages" runat="server" ActiveViewIndex="1"> то второй вью отображается без проблем, т.е. проблем с переключеньем...

Автор: 1stain 3.1.2010, 23:45
кури разницу между Button.OnClick & Button.OnClientClick

Автор: Neith 3.1.2010, 23:48
работает!=) большое человеческое спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)