Programming/.NET
MultiView는 내부에 여러 View 요소를 포함할 수 있으며 페이지 안에서 특정 부분을 보이거나 보이지 않도록 제어할 수 있습니다.
<asp:MultiView ID="MultiView1" runat="server">
    <asp:View ID="View1" runat="server">
        이것은 버튼<br />
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </asp:View>
    <asp:View ID="View2" runat="server">
        이것은 라벨<br />
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    </asp:View>
    <asp:View ID="View3" runat="server">
        이것은 텍스트박스<br />
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    </asp:View>
</asp:MultiView>
<코드 1-1>

MultiView는 내부에 View요소만 추가될 수 있으며 View내부에 다시 다른 내용을 추가하는 식으로 MultiView를 구성하게 됩니다.
 
 주요속성/이벤트

(1) ActiveViewIndex

MultiView 안에 View를 배치하고 실행하면 아무것도 보이지 않는데(기본값 -1) 어떤 View를 보일지는 ActiveViewIndex 속성을 통해 지정합니다. Index순서는 0부터 시작하므로 만약 <코드 1-1>에서 이 값을 0으로 설정하면 '이것은 버튼....' 이라는 내용의 View가 보이게 될 것입니다.

따라서 당연히 ID가 View2 나 View3 인 부분이 보이게 하려면 그에 맞는 ActiveViewIndex 를 설정해야 하겠죠.

다만 MultiView 는 자체적으로 View를 이동시킬 수 있는 이벤트가 없으므로 버튼이나 기타 다른 컨트롤을 배치하여 해당 컨트롤의 이벤트 안에서 View를 이동시킬 수 있도록 처리해야 합니다.

예를 들어 <코드1-1>에서 다음과 같이 두개의 버튼을 추가하고
<asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0">
    <asp:View ID="View1" runat="server">
        이것은 버튼<br />
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </asp:View>
    <asp:View ID="View2" runat="server">
        이것은 라벨<br />
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    </asp:View>
    <asp:View ID="View3" runat="server">
        이것은 텍스트박스<br />
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    </asp:View>
</asp:MultiView>

<asp:Button ID="Button2" runat="server" Text="다음" OnClick="Button2_Click" />
<asp:Button ID="Button3" runat="server" Text="이전" OnClick="Button3_Click" />
추가된 버튼의 이벤트에 상황에 맞는 ActiveViewIndex 를 설정하도록 하면 됩니다.
protected void Button2_Click(object sender, EventArgs e)
{
    MultiView1.ActiveViewIndex += 1;
}

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

'Programming > .NET' 카테고리의 다른 글

[ASP.NET] HiddenField  (0) 2014.02.06
[ASP.NET] RequestFieldValidator  (0) 2014.02.05
[ASP.NET] MultiView 와 View  (0) 2014.02.04
[ASP.NET] Global.aspx  (0) 2014.02.03
[ASP.NET] Chart  (0) 2014.01.27
[ASP.NET] BulletedList  (0) 2014.01.23
0 0