0

WPF アプリケーションで作業中。XAML でリージョンを複数回使用しようとしています。ただし、実行時例外「Region with the given name is already registered: DeviceListRegion」を取得することはできません

私は何かをしようとしています。

 <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="Auto"/>
            <ColumnDefinition Width="3*"/>
        </Grid.ColumnDefinitions>
        <ContentControl cal:RegionManager.RegionName="{x:Static Regions.DeviceListRegion}"
                    Grid.Column="0"/>
        <GridSplitter 
        ResizeDirection="Columns" 
        Grid.Column="1" 
        Width="3"
        Height="Auto"
        Background="Black"
        HorizontalAlignment="Stretch" 
        VerticalAlignment="Stretch" 
        Margin="0"/>
        <ContentControl cal:RegionManager.RegionName="{x:Static Regions.DeviceListRegion}"
                    Grid.Column="0"/>
    </Grid>

私の要件は、異なる xaml で同じビューを複数回呼び出す必要があることです。それを行う正しい方法は何ですか?

編集: - 私の特定のシナリオは、MainProject のみで Region に登録された UserControl があり、そこでも使用される MainProject を持っていることです。

<ContentControl cal:RegionManager.RegionName="{x:Static UIFramework:Regions.PropertiesRegion}" Grid.Column="2"/>

メインプロジェクトを参照していない別のプロジェクトを作成しました。しかし、それでも同じリージョン「Regions.PropertiesRegion」を使用したいと考えています。

 <TabControl>
        <TabItem Header="General">
            <ContentControl cal:RegionManager.RegionName="{x:Static UIFramework:Regions.PropertiesRegion}"/>
        </TabItem>
        <TabItem Header="Properties">
            <ContentControl cal:RegionManager.RegionName="{x:Static PwrGui:LocalRegions.AnotherRegion}"/>
        </TabItem>
  </TabControl>

このコードは、「指定された名前のリージョンは既に登録されています。」という例外をスローしています。どうすればこれを達成できますか?

4

0 に答える 0