WPF设计时间事件处理程序

时间:2016-06-30 16:58:03

标签: c# wpf design-time

如何处理设计时间事件?

更具体地说,如果我正在创建一个可以像这样使用的自定义TabMenu:

<Controls:TabMenu Orientation="Horizontal" Container="{Binding ElementName=gridContainer}">
    <Controls:TabItem Header="Header">
        <Grid>
            //Tab content
        </Grid>
    </Controls:TabItem>
    <Controls:TabItem Header="Empty tab"/>
</Controls:TabMenu>

//Load the tab content here
<Grid x:Name="gridDisplay" />

我希望 TabMenu 在选择任何 TabItem 内容加载到容器中> TabItem 在设计师中,

我可以在 TabMenu 已加载中使用此内容,将第一个 TabItem 的内容加载到容器中事件;

if (stackHost.Children.Count > 0)
{
    TabItem firstItem = (TabItem)stackHost.Children[0];
    SelectTab(firstItem);
}

注意: TabItem MouseDown 事件未触发设计时间。

1 个答案:

答案 0 :(得分:0)

现有设计师拦截一切。如果你想做自定义的东西,你必须创建一个自定义设计师:

https://msdn.microsoft.com/en-us/library/bb675304(v=vs.110).aspx

免责声明:关于此问题的信息不多:)。