您的位置:首页 > 其它

[Silverlight 技巧探讨1]用Silverlight简单实现多TabItem关闭效果

2012-12-04 16:16 225 查看
<UserControl x:Class="SL.Demo1.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400" xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk">

<Grid x:Name="LayoutRoot" Background="White">
<sdk:TabControl x:Name="Tab" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<sdk:TabItem Width="80" Name="TabItem_page1">
<sdk:TabItem.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="One" VerticalAlignment="Center"></TextBlock>
<Button Content="X" Name="btn1" Margin="20,0,0,0" Width="20" Click="btn1_Click"/>
</StackPanel>
</sdk:TabItem.Header>
This is first page
</sdk:TabItem>
<sdk:TabItem Width="80" Name="TabItem_page2">
<sdk:TabItem.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Two" VerticalAlignment="Center"></TextBlock>
<Button Content="X" x:Name="btn2" Margin="20,0,0,0" Width="20" Click="btn2_Click"/>
</StackPanel>
</sdk:TabItem.Header>
This is second page
</sdk:TabItem>
</sdk:TabControl>
</Grid>
</UserControl>


后台托管代码:

using System.Windows;
using System.Windows.Controls;

namespace SL.Demo1
{
public partial class MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
}

private void btn1_Click(object sender, RoutedEventArgs e)
{
Tab.Items.Remove(TabItem_page1);
}
private void btn2_Click(object sender, RoutedEventArgs e)
{
Tab.Items.Remove(TabItem_page2);
}
}
}


最终的效果如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: