Макет страницы в проекте Prism Silverlight - PullRequest
0 голосов
/ 21 мая 2011

ОК, я пытался задать этот вопрос здесь , но без особого успеха. Пробовал несколько хаков типа this one; Поправь меня, если я ошибаюсь, но я не думаю, что это лучший способ.

Я пытаюсь заставить приложение silverlight охватить всю область браузера. Решение, предоставленное в моем предыдущем вопросе, работает для стандартного проекта Silverlight, но для проекта Silverlight Prism, похоже, не применяются те же правила. Я думаю, что это как-то связано с модулем silverlight, содержащим страницу, на которую загружается основной пользовательский элемент управления внутри элемента управления содержимым Shell.xaml.

Кто-нибудь знает, как это исправить?

Код моего Shell.xaml ниже:

<UserControl x:Class="MyNamspace.Shell"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
xmlns:Regions="http://www.codeplex.com/prism"
Background="#FF2D8543"  
         >

<ContentControl Regions:RegionManager.RegionName="MainRegion" 
Background="Black" 
VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"


 >
</ContentControl>

xaml моей страницы модуля, которую я регистрирую в Contentcontrol Shell.xaml

<UserControl x:Class="MyNamspace.MyClass"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"
MinHeight="800" MinWidth="800"
 >
<UserControl.Background>
    <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
        <GradientStop Color="Black" Offset="0"/>
        <GradientStop Color="#FF2D8543" Offset="1"/>
    </LinearGradientBrush>
</UserControl.Background>
<Grid x:Name="LayoutRoot" Background="#FFEB0A0A" 
VerticalAlignment="Top" HorizontalAlignment="Center"
 >
    <Grid.ColumnDefinitions> 
        <ColumnDefinition Width="*" /> 
        <ColumnDefinition Width="*" /> 
    </Grid.ColumnDefinitions> 
    <Grid.RowDefinitions> 
        <RowDefinition Height="Auto" /> 
    </Grid.RowDefinitions> 

    <sdk:Label Height="23" HorizontalAlignment="Left" Margin="64,85,0,0" Name="label1" 
    VerticalAlignment="Top" Width="252" Content="Login page here" />
</Grid>

Причина, по которой я использую разные цвета, заключается в том, что я хочу увидеть, где находится пользовательский контроль Shell и где внутри него находится Contentcontrol. То же самое касается страницы моего модуля.

Еще раз спасибо ...

1 Ответ

0 голосов
/ 06 мая 2012

Удалить VerticalAlignment и HorizontalAlignment назначения из LayoutRoot.

...