2

私のページには 5 つのタブ項目があり、2,000 行を超えるコードがあります。各タブ項目のコードを何らかのテンプレートに移動することはできますか? このような大きなページをリファクタリングするにはどうすればよいですか?

ありがとうございました。

4

2 に答える 2

3

いつでも新しいリソース ディクショナリを作成し、各タブ ページのコンテンツを配置してキーを与えることができます。

<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>

複数のタブでコンテンツを使用する場合、実際には同じ静的インスタンスを共有するため、複数のインスタンスが必要かどうかを指定する必要があります。

于 2013-04-16T14:21:50.640 に答える
2

新しい UserControls を作成し、各タブ ページのコンテンツを配置するだけです。

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

次に、メインページに次のように ref を含めます。

<Page x:Class="InstrumentServicePage"
      xmlns:sHistory="clr-namespace:InstrumentServiceTabItems">

        <TabControl>
            <TabItem>
               <sHistory:ServiceHistory />
            <TabItem>
        </TabControl>
</Page>
于 2013-04-16T15:01:27.563 に答える