4

継承はXAMLでどのように行われますか?

コード ビハインドのみを継承でき、 .xamlは継承できないというのは本当ですか(関連する質問)? 子コントロールの名前空間に親を含めることが唯一の方法ですか?

XAMLには一般的な「継承」自体はないようです。継承などについての質問がありますが、一般的な継承ではありません。UserControl

問題:

非常によく似た2 つの xaml ファイルFile1.xamlFile2.xamlがあります。を作成してSuperFile.xaml、次のコードを大量に入れることはできますか?

<UserControl ... >
    <Grid>
        <Grid.RowDefinitions ... />

        <DockPanel ... >
            <ToolBar ... >
                <!-- Some Buttons here:
                     File1.xaml to contain the Buttons "View" and "Export"
                     File2.xaml to contain the Buttons "Edit" and "Delete"
                 -->
            </ToolBar>
        </DockPanel>

        <igDP:XamDataGrid MouseDoubleClick="xamDataGrid1_MouseDoubleClick" ... />
    </Grid>
</UserControl>

との違いは次のとおりです。File1.xamlFile2.xaml

  1. Button(コード内のToolBarコメントを参照)
  2. プロパティXamDataGrid主にイベント (各ケースでの動作)。

どうすればこれを達成できますか?両方の子のコード ビハインド ファイルを別々に作成する必要がありますか?

4

1 に答える 1

5

ResourceDictionaryを使用できます

すべての一般的なテンプレートとスタイルを に入れ、ResourceDictionary両方のUserControlsインポートをResourceDictionary

<UserControl.Resources>
    <ResourceDictionary Source="BaseStylesAndTemplates.xaml" />
</UserControl.Resources>
于 2012-07-05T18:14:16.097 に答える