动态添加内容到hubsection xaml

时间:2015-12-17 17:23:39

标签: c# xaml windows-10-universal

XmlReader tXml = XmlReader.Create(new StringReader("certain xaml code which has the desired layout..."));
UIElement MyElement = (UIElement) XamlReader.Load(tXml.ToString());

我需要在hubsection中动态添加在运行时创建的MyElement。我怎么能实现呢?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以在DataTemplate标记之间插入xaml字符串:

var myXaml = "<TextBlock>test</TextBlock>";
var template = XamlReader.Load("<DataTemplate xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\">" + myXaml + "</DataTemplate>");

如果需要,请不要忘记声明默认命名空间和其他命名空间。

接下来,您只需设置HubSection的ContentTemplate属性:

Section1.ContentTemplate = template as DataTemplate;

假设您的Hub声明为:

<Hub>
    <HubSection x:Name="Section1" />
</Hub>