0

我有上下文菜单类,它从 ComponentArt 继承“ContextMenu”类。

完整的层次结构是:

ChartContextMenu
  ComponentArt.ExtendedContextMenu
    ComponentArt.ContextMenu
      ComponentArt.Menu
        ItemsControl

此菜单没有自己的 XAML,只是代码并附加到 XAML,如下所示:

<context:ChartContextMenu x:Name="contextMenu" Theme="{StaticResource Windows7Theme}" />.

问题:我想让这个菜单可以滚动。

我知道如何使菜单可滚动,以防它具有 XAML(只是封装到 ScrollableView)。但是没有 XAML 怎么办呢?

4

1 回答 1

0

它看起来像解决方法。你不应该只在代码中创建控件。这是不好的做法!尝试混合 xaml/code。我确定它可以解决任何问题。ps 此外,您不能以编程方式为您的控件创建模板,但您可以使用如下代码从 XAML 字符串加载它:

public static DataTemplate Create(Type type)
{
    return (DataTemplate) XamlReader.Load(
        @"<DataTemplate
            xmlns=""http://schemas.microsoft.com/client/2007"">
            <" + type.Name + @"/>
          </DataTemplate>"
      );
}
于 2012-11-01T15:11:36.670 回答