星辰.Net技术社区论坛

首页 » .NET » Silverlight » 在Silverlight 2 Beta2 中使用TabControl
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¯–~u
”n‹ƒÞ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
1
查看完整版本: 在Silverlight 2 Beta2 中使用TabControl