Silverlight:CreateFromXAMLDownloader
按照使用downloader内容动态的创建XAML.
retval = silverlightObject.content.CreateFromXamlDownloader(downloader, part);
参数:
返回值的类型为Object,返回是一个对象引用那就是XAML被创建成功,否则其他的返回为null.
这个方法是a Silverlight plug-in实例的子对象Content下的一个方法.
CreateFromXamlDownloader方法按照在Downloader对象中使用的下载内容使用XAML动态的创建对象,只要能添加当前Silverlight对象,CreateFromXamlDownloader方法就会返回一个对象引用,你能创建一个单独的Silverlight对象,如TextBlock或Silverlight objects实体树.
注意:
CreateFromXamlDownloader方法比CreateFromXAML方法下载内容更有效,这是因为它的内部实现拷贝下载内容来于Downloader请求并且通过它立即进入XAML编译器材,不需要中间缓冲.
使用CreateFromXamlDownloader方法创建XAML内容不能呈现,直到它添加一个对象使用Add方法.下面图显示Silverlight object的层次结构和下载XAML内容在添加一个新的对象前后的关系.
事例:
下面是JavaScript事例显示的是怎样通过使用CreateFromXamlDownloader方法为Canvas对象添加XAML内容.因为下载内容是使用的是包的方式,所以part参数设置为空字符串.
// Event handler for the Completed event.
function onCompleted(sender, eventArgs)
{
// Retrieve a reference to the plug-in.
var slPlugin = sender.getHost();
![](/Images/OutliningIndicators/InBlock.gif)
// Retrieve the XAML fragment and create an object reference.
// In this case, since the downloaded content represents a single file, OK_button.xaml,
// the part parameter is set to an empty string.
var xamlFragment = slPlugin.content.createFromXamlDownloader(sender, "");
![](/Images/OutliningIndicators/InBlock.gif)
// Add the XAML object as a child of the root Canvas object.
var root = sender.findName("rootCanvas");
root.children.add(xamlFragment);
}
你还能使用CreateFromXamlDownloader方法找回一个指定下载内容包中的part.当下载包为一个Zip文件时候,CreateFromXamlDownloader方法能找回ZIP文件中相应的文件名的文件.
下面JavaScript事例Show怎样使用CreateFromXamlDownloader方法,使用part参数引用指定的下载内容中的part.
JScript
Copy Code
![](/Images/OutliningIndicators/None.gif)
// Event handler for the Completed event.
function onCompleted(sender, eventArgs)
{
// Retrieve a reference to the plug-in.
var slPlugin = sender.getHost();
![](/Images/OutliningIndicators/InBlock.gif)
// Retrieve the specified XAML file from the packaged downloader content,
// and create an object reference.
var xamlFragment = slPlugin.content.createFromXamlDownloader(sender, "OK_button.xaml");
![](/Images/OutliningIndicators/InBlock.gif)
// Add the XAML object as a child of the root Canvas object.
var root = sender.findName("rootCanvas");
root.children.add(xamlFragment);
}
![](/Images/OutliningIndicators/None.gif)
参数:
参数名 | 类型 | 描述 |
downloader | 类型是Downloader | Downloader对象初始化请求下载内容. |
part | 类型是string | 明确指定下载包中的part名.当下载包是一个.Zip文件时,part将引用在Downloader中相应的文件名.如果下载内容没有在包中,设置part为一个空字符串.part不是一个可选参数,你至少必须指定为空字符串; |
返回值的类型为Object,返回是一个对象引用那就是XAML被创建成功,否则其他的返回为null.
这个方法是a Silverlight plug-in实例的子对象Content下的一个方法.
CreateFromXamlDownloader方法按照在Downloader对象中使用的下载内容使用XAML动态的创建对象,只要能添加当前Silverlight对象,CreateFromXamlDownloader方法就会返回一个对象引用,你能创建一个单独的Silverlight对象,如TextBlock或Silverlight objects实体树.
注意:
CreateFromXamlDownloader方法比CreateFromXAML方法下载内容更有效,这是因为它的内部实现拷贝下载内容来于Downloader请求并且通过它立即进入XAML编译器材,不需要中间缓冲.
使用CreateFromXamlDownloader方法创建XAML内容不能呈现,直到它添加一个对象使用Add方法.下面图显示Silverlight object的层次结构和下载XAML内容在添加一个新的对象前后的关系.
事例:
下面是JavaScript事例显示的是怎样通过使用CreateFromXamlDownloader方法为Canvas对象添加XAML内容.因为下载内容是使用的是包的方式,所以part参数设置为空字符串.
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
你还能使用CreateFromXamlDownloader方法找回一个指定下载内容包中的part.当下载包为一个Zip文件时候,CreateFromXamlDownloader方法能找回ZIP文件中相应的文件名的文件.
下面JavaScript事例Show怎样使用CreateFromXamlDownloader方法,使用part参数引用指定的下载内容中的part.
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)