admin - 2008-6-13 9:40:00
在Silverlight 2 Beta2 中新加入了TabControl控件,使用它可以帮助我们实现属性页的效果。nÞwww.netcsharp.cn[Ç0¯~u
如下图:nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u 本DEMO的XAML代码段如下:nÞwww.netcsharp.cn[Ç0¯~u
<Canvas x:Name="LayoutRoot" Background="White">nÞwww.netcsharp.cn[Ç0¯~u
<local:TabControl x:Name="tab1" Canvas.Top="20" Canvas.Left="20" Height="100" Width="300"nÞwww.netcsharp.cn[Ç0¯~u
/> nÞwww.netcsharp.cn[Ç0¯~u
<local:TabControl x:Name="tab2" Canvas.Top="140" Canvas.Left="20" Height="100" Width="300"nÞwww.netcsharp.cn[Ç0¯~u
/>nÞwww.netcsharp.cn[Ç0¯~u
<local:TabControl x:Name="tab3" Canvas.Top="280" Canvas.Left="20" Height="100" Width="300"nÞwww.netcsharp.cn[Ç0¯~u
>nÞwww.netcsharp.cn[Ç0¯~u
<local:TabItem x:Name="white" Header="white" Background="white" Style="{StaticResource MyTabItemStyle}"/>nÞwww.netcsharp.cn[Ç0¯~u
<local:TabItem x:Name="red" Header="red" Background="Red" Style="{StaticResource MyTabItemStyle}"/>nÞwww.netcsharp.cn[Ç0¯~u
<local:TabItem x:Name="blue" Header="blue" Background="Blue" Style="{StaticResource MyTabItemStyle}"/>nÞwww.netcsharp.cn[Ç0¯~u
</local:TabControl>nÞwww.netcsharp.cn[Ç0¯~u
</Canvas>nÞwww.netcsharp.cn[Ç0¯~u
下面是它的page.xaml.cs代码:nÞwww.netcsharp.cn[Ç0¯~unÞwww.netcsharp.cn[Ç0¯~u
public Page()nÞwww.netcsharp.cn[Ç0¯~u
{nÞwww.netcsharp.cn[Ç0¯~u
InitializeComponent();nÞwww.netcsharp.cn[Ç0¯~u
this.Loaded += new RoutedEventHandler(Page_Loaded); nÞwww.netcsharp.cn[Ç0¯~u
}nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
void tab3_SelectionChanged(object sender, SelectionChangedEventArgs e)nÞwww.netcsharp.cn[Ç0¯~u
{nÞwww.netcsharp.cn[Ç0¯~u
tab3.Background = ((TabItem)tab3.SelectedItem).Background;nÞwww.netcsharp.cn[Ç0¯~u
}nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
void tab2_SelectionChanged(object sender, SelectionChangedEventArgs e)nÞwww.netcsharp.cn[Ç0¯~u
{nÞwww.netcsharp.cn[Ç0¯~u
tab1.SelectedIndex = tab2.SelectedIndex;nÞwww.netcsharp.cn[Ç0¯~u
//object o = tab1.FindName("first item");nÞwww.netcsharp.cn[Ç0¯~u
}nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
void Page_Loaded(object sender, RoutedEventArgs e)nÞwww.netcsharp.cn[Ç0¯~u
{nÞwww.netcsharp.cn[Ç0¯~u
List<TabItem> tabItems = new List<TabItem>()nÞwww.netcsharp.cn[Ç0¯~u
{nÞwww.netcsharp.cn[Ç0¯~u
new TabItem() {Header = "第一选项", Content = "第一选项中内容"},nÞwww.netcsharp.cn[Ç0¯~u
new TabItem() {Header = "第二选项", Content = "第二选项中内容"},nÞwww.netcsharp.cn[Ç0¯~u
new TabItem() {Header = "第三选项", Content = "第三选项中内容"}nÞwww.netcsharp.cn[Ç0¯~u
};nÞwww.netcsharp.cn[Ç0¯~u
foreach (TabItem tabItem in tabItems)nÞwww.netcsharp.cn[Ç0¯~u
{nÞwww.netcsharp.cn[Ç0¯~u
tab1.Items.Add(tabItem);nÞwww.netcsharp.cn[Ç0¯~u
}nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
tabItems = new List<TabItem>()nÞwww.netcsharp.cn[Ç0¯~u
{nÞwww.netcsharp.cn[Ç0¯~u
new TabItem() {Header = "第一选项", Content = "第一选项中内容"},nÞwww.netcsharp.cn[Ç0¯~u
new TabItem() {Header = "第二选项", Content = "第二选项中内容"},nÞwww.netcsharp.cn[Ç0¯~u
new TabItem() {Header = "第三选项", Content = "第三选项中内容"}nÞwww.netcsharp.cn[Ç0¯~u
};nÞwww.netcsharp.cn[Ç0¯~u
foreach (TabItem tabItem in tabItems)nÞwww.netcsharp.cn[Ç0¯~u
{nÞwww.netcsharp.cn[Ç0¯~u
tab2.Items.Add(tabItem);nÞwww.netcsharp.cn[Ç0¯~u
}nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
tab1.TabStripPlacement = Dock.Bottom;nÞwww.netcsharp.cn[Ç0¯~u
tab2.TabStripPlacement = Dock.Left;nÞwww.netcsharp.cn[Ç0¯~u
tab3.TabStripPlacement = Dock.Top;nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
tab2.SelectionChanged += new SelectionChangedEventHandler(tab2_SelectionChanged);nÞwww.netcsharp.cn[Ç0¯~u
tab3.SelectionChanged += new SelectionChangedEventHandler(tab3_SelectionChanged);nÞwww.netcsharp.cn[Ç0¯~u
}nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u
nÞwww.netcsharp.cn[Ç0¯~u附件:
silverlight2beta2_tabcontrol.rar
hollydsj - 2008-6-13 9:52:00
学习了nÞwww.netcsharp.cn[Ç0¯~u
zhenbaots - 2008-6-14 12:59:00
不错 学习一下 ,现在安装上新的版本,以前的项目一堆错误,哎 改吧nÞwww.netcsharp.cn[Ç0¯~u