silverlight   发布时间:2022-05-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Silverlight中的TabControl如何绑定数据大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_874_1@

概述

在 WPF 中,TabControl 可以直接将 Itemssource 绑定数据源 将 TabControl 绑定到数据的示例 http://msdn.microsoft.com/zh-cn/library/aa972130(Vs.90).aspx   < Window.resources > <

在 WPF 中,TabControl 可以直接将 Itemssource 绑定数据源

将 TabControl 绑定到数据的示例

http://msdn.microsoft.com/zh-cn/library/aa972130(VS.90).aspx

 

@H_403_16@

Silverlight中的TabControl如何绑定数据

  
  
< Window.resources >
ObjectDataProvider x:Key ="TabListresource" ObjectType =" {x:Type src:TabList} " /> DataTemplate ="HeaderTemplate" TextBlock Text {Binding Path=Header} </ DataTemplate ="ContentTemplate" {Binding Path=Content} DockPanel TabControl Itemssource {Binding source={Staticresource TabListresourcE}}
ItemTemplate
{Staticresource HeaderTemplatE}
ContentTemplate
{Staticresource ContentTemplatE} " >
@H_403_16@

Silverlight中的TabControl如何绑定数据

 

匪疑所思的是,TabControl.ItemTeplate 居然是用于 Header, ContentTemplate 才是用于 TabItem。

但是在 Silverlight 中貌似无此功能, TabControl.ContentTemplate  属性也不存在。

作为从 ItemsControl 中派生的类,Silverlight 中的 TabControl.Itemssource 貌似要求为IEnumerable<TabItem>,

这让人很难接受, 不知是不是真的这样?

作为无奈的解决办法,只能对通过代码动态添加各个 TabItem,并对它们分别进行 Binding。

下面是代码

@H_403_16@namespace TabControl_DataBinding
{
using Sy
stem;
System.ComponentModel;
System.Collections.ObjectModel;
System.ComponentModel.DataAnnotations;

public class Model
{
ObservableCollection < Article > Articles { get ; private set ; }
Model()
{
this .Articles = new ();
}
}
Article
{
String LanguageCode { Languagename { ; }
[Display(Name
= " 主题 " )]
Subject { ; }
[Display(Name
详细描述 Description { ; }
}

SetTings
{
static System.Collections.Generic.Dictionary ,
Languages {
SetTings()
{
Languages
();
Languages.Add(
en :1.5; color:rgb(128, English );
Languages.Add(
zh-Hans 简体 zh-Hant 繁体 );
}
}
}

@H_146_262@
@H_403_16@
@H_403_16@UserControl.Resources ="languageDataTemplate" Grid Grid.ColumnDeFinitions columnDeFinition Width ="Auto" Grid.RowDeFinitions RowDeFinition Height ="*" sdk:Label Grid.column ="0" Grid.Row
Target
{Binding ElementName=txtSubject} TextBox ="1" Name ="txtSubject"
Text
{Binding Subject,Mode=TwoWay,
ValidatesOnExceptions=true,NotifyOnValidationError=truE}
{Binding ElementName=txtDetail} ="txtDetail" Width ="280" {Binding Description,0)">
Height
="80" AcceptsReturn ="True" textwrapping ="Wrap"
VerticalScrollBarVisibility
Grid Grid x:Name ="LayoutRoot" BACkground ="White" sdk:TabControl Name ="tabControl1" Margin ="16" sdk:TabControl
@H_403_16@partial
MainPage : UserControl
{
Model data;
MainPage()
{
InitializeComponent();
.Loaded += (sender,E) =>
{
.GenerateData();
.bindControls();
};
}
@H_890_403@/// <sumMary>
创建初始数据
@H_890_403@</sumMary> @H_890_403@
void GenerateData()
{
.data Model();
foreach (var item in SetTings.Languages)
{
.data.Articles.Add( Article()
{
LanguageCode
item.Key,
Languagename
item.Value,
Subject
+ item.Value
});
}
}

BindControls()
{
SetTings.Languages)
{
Article article
.data.Articles
.Single(art
art.LanguageCode == item.Key);
TabItem ti
TabItem()
{
Header
article.Languagename,
Tag
article.LanguageCode,
ContentTemplate
(DataTemplatE) .resources[ languageDataTemplate ]
};
ti.SetBinding(TabItem.ContentProperty,0)"> System.Windows.Data.binding());
.tabControl1.Items.Add(ti);
ti.DataContext
article;
}
}


}
@H_403_16@

Silverlight中的TabControl如何绑定数据

大佬总结

以上是大佬教程为你收集整理的Silverlight中的TabControl如何绑定数据全部内容,希望文章能够帮你解决Silverlight中的TabControl如何绑定数据所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。