2017-07-26 47 views
0

我有一個場景,在視圖模型中更改內容對話框的大小。這在AnniversaryUpdate中可以正常工作,但通過創作者更新,我得到了完全不同的(並且不可行的)行爲。ContentDialog與創作者更新的行爲差異

我有一個內容對話框,我想根據用戶輸入將畫面大小從縱向改爲橫向。在建立14393(週年紀念),它工作得很好。當我切換項目以使用創作者更新(150630)時,它根本不起作用。

這裏是XAML代碼驅動問題:

<ContentDialog 
x:Class="DialogView" 
...snip... 
Background="LightGray" 
MinHeight="{Binding GridHeight}" MinWidth="{Binding GridWidth}"> 

<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> 
    <Grid Background="AliceBlue" Visibility="Collapsed"/> 
    <Button Content="{Binding Orientation}" Height="40" Click="ToggleButton_Click" VerticalAlignment="Top" HorizontalAlignment="Left"/> 
</Grid> 

當我運行內置的創作者更新,我得到一個非常小對話框,不會改變大小。

回答

0

在14393的Windows.UI.Xaml.Controls.ContentDialog的默認樣式是從Windows.UI.Xaml.Controls.ContentDialog默認樣式不同的15063.

在爲Windows.UI的默認樣式.Xaml.Controls.ContentDialog在15063中,它使用ContentDialogMinHeightContentDialogMinWidth來設置MinHeightMinWidth。和ContentDialogMinHeightContentDialogMinWidth的默認值是184和320

當你將該值設置爲MinHeight並在ContentDialog控制MinWidth財產,也不會改變,在風格定義值。

在14393中,它沒有定義默認樣式中的MinHeightMinWidth。如果你想獲得相同的MinHeightMinWidth如14393 15063中,你應該能夠複製默認樣式15063並刪除下面的代碼:

<Setter Property = "MinHeight" Value="{ThemeResource ContentDialogMinHeight}" /> 
<Setter Property = "MinWidth" Value="{ThemeResource ContentDialogMinWidth}" />