用两千行代码重构xaml页面

本文关键字:代码 重构 xaml 页面 两千 | 更新日期: 2023-09-27 18:09:39

我的页面有5个选项卡项,有两千多行代码。是否可以将每个选项卡项的代码移动到某种模板中?我该如何重构这么大的页面?

谢谢。

用两千行代码重构xaml页面

您可以创建新的资源字典,并将每个选项卡页面的内容放入其中,并为它们提供一个键。

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Grid x:Key="tabPage1">
        <!-- your controls here-->
    </Grid>
</ResourceDictionary>

则使用该键进行引用。

<TabControl>
    <TabItem Content="{StaticResource tabPage1}"/>
</TabControl>

如果你想在多个选项卡上使用内容,它实际上会共享相同的静态实例,所以如果你想要多个实例,你必须指定

您可以创建新的UserControls并将每个选项卡页面的内容放在其中

<UserControl x:Class="InstrumentServiceTabItems.ServiceHistory">
    <Grid>
    ...
    </Grid>
</UserControl>

,然后在主页面包含如下引用:

<Page x:Class="InstrumentServicePage"
      xmlns:sHistory="clr-namespace:InstrumentServiceTabItems">
        <TabControl>
            <TabItem>
               <sHistory:ServiceHistory />
            <TabItem>
        </TabControl>
</Page>