2010-09-23 34 views
2

这可能更像是一种喧哗,但在Silverlight代码中构建DataTemplates似乎是不可能的。在一个选项我知道使用XamlReader.Load(串)之中,一个是遇到了使用这种方法的几个问题:在c#代码中构建一个Silverlight DataTemplate代码

  1. 没有确认,一切都在连接的字符串完成。我们都知道这很糟糕

  2. 必须包括任何必要的资源,因为这将在其自己的上下文中运行。这也很糟糕,虽然有一个合理的解释,而不是一个表演停止。

  3. 任何尝试在您的DataTemplate中包含事件调用都将失败并显示InvalidOperationException:控件无效的XA​​ML:XamlReader.Load()不接受事件处理程序。

3号似乎对我来说是一个阻碍。如果有人提供了一些线索,指针或想法,或者更好地实现这一目标,我将不胜感激。

在WPF中有一个FrameworkElementFactory可以提供帮助,但是在Silverlight中似乎没有任何补救措施。

回答

0

也许你不需要在代码中构建数据模板。你真的需要这样做吗?

(#2)您不需要包含xaml资源。它可以驻留在某个地方。所有你需要做的就是远程加载它。但也许我不明白你的意思。

+0

那么这是案件的假设之一,我真的很需要那样做。相信我,我不想。 – danijels 2010-09-23 09:13:56