Silverlight中的可滚动上下文菜单

时间:2012-11-01 12:46:50

标签: silverlight silverlight-5.0

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

完整的层次结构是:

ChartContextMenu
  ComponentArt.ExtendedContextMenu
    ComponentArt.ContextMenu
      ComponentArt.Menu
        ItemsControl

此菜单没有自己的XAML,只是代码并附加到XAMLs:

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

问题:我想将此菜单滚动。

我知道如果它有XAML(只是包含在ScrollableView中),可以使菜单可滚动。但是没有XAML怎么办?

1 个答案:

答案 0 :(得分:0)

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

public static DataTemplate Create(Type type)
{
    return (DataTemplate) XamlReader.Load(
        @"<DataTemplate
            xmlns=""http://schemas.microsoft.com/client/2007"">
            <" + type.Name + @"/>
          </DataTemplate>"
      );
}