在 Windows 重新托管的工作流设计器中更改工具箱样式

Changing the Toolbox style in Windows re-hosted workflow designer

使用 AvalonDock 我创建了 ToolBoxControl,现在我计划禁用某些顶级活动(希望它显示为灰色)。我想知道我能做到的方法。

下图中,红色圈出的活动,我想将它们变灰或更改字体颜色。这样我就可以区分使用该软件的用户。

在 XAML 中使用的代码是

<xcad:DockingManager Grid.Row="1"
                       AllowMixedOrientation="True"
                       BorderBrush="Black"
                       BorderThickness="1">
        <xcad:LayoutRoot x:Name="LayoutRoot">
            <xcad:LayoutPanel Orientation="Horizontal">

                <xcad:LayoutAnchorablePane DockWidth="200">
                    <xcad:LayoutAnchorable Title="Toolbox" CanClose="False" CanFloat="False" CanHide="False" ContentId="toolbox" x:Name="CtrlToolbox">
                    </xcad:LayoutAnchorable>

                    <xcad:LayoutAnchorable Title="Outline" CanClose="False" CanFloat="False" CanHide="False" ContentId="outline" x:Name="CtrlOutline">
                    </xcad:LayoutAnchorable>
                </xcad:LayoutAnchorablePane>

此文件的 .cs 版本是:

private void AddToolBox()
{
    ToolboxControl tc = GetToolboxControl(); //CreateToolboxControls();
    CtrlToolbox.Content = tc;
}


private ToolboxControl GetToolboxControl()
{

// Create the ToolBoxControl.
ToolboxControl ctrl = new ToolboxControl();

ToolboxCategory categoryFlowChart = new ToolboxCategory("Flow Chart");
ToolboxCategory categoryStateMachine = new ToolboxCategory("State Machine");
ToolboxCategory categoryExport = new ToolboxCategory("File System");
ToolboxCategory categoryWindowsApp = new ToolboxCategory("Windows App");
ToolboxCategory categorySSH = new ToolboxCategory("SSH");
ToolboxCategory categoryVBScript = new ToolboxCategory("VB Script");
ToolboxCategory categoryCommunication = new ToolboxCategory("Communication");
ToolboxCategory categoryDatabase = new ToolboxCategory("Database");



// Add the category to the ToolBox control.
ctrl.Categories.Add(categoryFlowChart);
ctrl.Categories.Add(categoryDatabase);
ctrl.Categories.Add(categoryStateMachine);
ctrl.Categories.Add(categoryWindowsApp);
ctrl.Categories.Add(categorySSH);
ctrl.Categories.Add(categoryCommunication);
ctrl.Categories.Add(categoryVBScript);

return ctrl

}

我需要提供的任何其他信息请告诉我。只需要能够禁用顶层 activity.

看看 this 示例,它不完全是您想要的。但它解释了如何自定义 ToolboxControl 样式和更改图标。可以应用这个想法来将 ToolboxItems 的样式更改为您自己的方式。 (具体查看步骤 3)。如果您需要进一步的帮助,我可以举个例子。