一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

定義和使用字典資源

 lily193 2012-11-06
定義和使用字典資源(ResourceDictionary)
使用字典資源一般有三個(gè)方面的內(nèi)容。
1、首先需要?jiǎng)?chuàng)建一個(gè)資源字典的文件,也就是一個(gè)xaml的文件。

文件的語(yǔ)法格式如下

Test.xaml

<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"
xmlns:visualizationToolkit="clr-namespace:System.Windows.Controls.DataVisualization;assembly=System.Windows.Controls.DataVisualization.Toolkit">

<!--定義樣式資源-->
<Style x:Key="TextBlockStyle1" TargetType="TextBlock">
<Setter Property="Foreground" Value="Orange"/>
<Setter Property="FontSize" Value="24"/>
<Setter Property="VerticalAlignment" Value="Bottom"/>
</Style>

<!--定義數(shù)據(jù)模板資源-->
<DataTemplate x:Key="cityDetails">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="90"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<TextBlock Text="Activity: "
Grid.Column="0"
Grid.Row="0"
Style="{StaticResource detailsSmallTitle}"/>
<TextBlock Text="{Binding Activity}"
Grid.Column="1"
Grid.Row="0"
Style="{StaticResource detailsSmallText}"/>
……

</Grid>
</DataTemplate>

<!--定義控件模板資源-->
<ControlTemplate x:Key="ControlTemplateTest"
TargetType="chartingToolkit:Chart">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<visualizationToolkit:Title Grid.ColumnSpan="2"
Content="{TemplateBinding Title}"
Style="{TemplateBinding TitleStyle}"/>
……

</Grid>
</ControlTemplate>
</ResourceDictionary>

Style的x:Key屬性是資源字典里面的資源的唯一的標(biāo)示符,也是作為在其他頁(yè)面調(diào)用的一個(gè)唯一的Key來(lái)進(jìn)行調(diào)用。

2、調(diào)用資源資源中的資源

在MainPage.xaml頁(yè)面中添加資源字典,語(yǔ)法如下

<phone:PhoneApplicationPage.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Test.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</phone:PhoneApplicationPage.Resources>

ResourceDictionary.MergedDictionaries   獲取 ResourceDictionary 字典的集合,這些字典構(gòu)成了合并字典中的各種資源字典。 

如果想在程序啟動(dòng)時(shí)加載所有的資源,可以再App.xaml頁(yè)面上添加資源的加載,語(yǔ)法如下

<Application
x:Class="DataVisualizationOnWindowsPhone.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone">

<Application.Resources>
<!-- 添加資源 -->
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Test.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

……

</Application>

3、使用字典資源中的資源

在MainPage.xaml頁(yè)面中的控件調(diào)用自定義的資源,語(yǔ)法如下

調(diào)用字典資源中x:Key值為TextBlockStyle1的樣式資源

<StackPanel x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<TextBlock Text="Some Text" Style="{StaticResource TextBlockStyle1}"/>
</StackPanel>

調(diào)用字典資源中x:Key值為cityDetails的數(shù)據(jù)模板資源

<ContentControl ContentTemplate="{StaticResource cityDetails}"
HorizontalAlignment="Left"
x:Name="DetailsControl" Margin="0,0,0,5"/>

調(diào)用字典資源中x:Key值為ControlTemplateTest的控件模板資源

<charting:Chart x:Name="myChart"
Style="{StaticResource PhoneChartStyle}"
Template="{StaticResource ControlTemplateTest}">

……

</charting:Chart>

也可以在cs頁(yè)面調(diào)用字典資源,語(yǔ)法如下

ControlTemplate template;

template = Application.Current.Resources["ControlTemplateTest"] as ControlTemplate;

myChart.Template = template;

更多的介紹請(qǐng)參考MSDN的Silverlight資源字典介紹

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    亚洲欧美黑人一区二区| 欧美在线观看视频免费不卡| 亚洲精品国产精品日韩| 婷婷激情四射在线观看视频| 亚洲国产中文字幕在线观看| 国产精品不卡免费视频| 99在线视频精品免费播放| 日韩精品一区二区三区四区| 日韩人妻中文字幕精品| 国产人妻熟女高跟丝袜| 麻豆一区二区三区精品视频| 久久精品国产99国产免费| 99秋霞在线观看视频| 免费在线成人午夜视频| 亚洲另类欧美综合日韩精品| 91人妻人澡人人爽人人精品| 区一区二区三中文字幕| 欧美小黄片在线一级观看| 人妻少妇久久中文字幕久久| 日本欧美一区二区三区就| 五月天丁香婷婷狠狠爱| 亚洲国产精品国自产拍社区| 青青操日老女人的穴穴| 中文字幕人妻av不卡| 国产精品白丝久久av| 国产精品欧美激情在线观看| 婷婷九月在线中文字幕| 国产精品午夜福利在线观看| 激情丁香激情五月婷婷| 国产成人精品国产成人亚洲| 欧洲亚洲精品自拍偷拍| 中文字幕日韩欧美理伦片| 一区二区三区四区亚洲另类| 国产又粗又硬又大又爽的视频| 视频一区二区 国产精品| 亚洲欧美日韩网友自拍| 国产精品欧美激情在线观看| 亚洲天堂国产精品久久精品| 最近最新中文字幕免费| 日韩精品免费一区三区| 九九热这里只有免费精品|