WPF窗口大小调整和ActualWidth / ActualHeight值

时间:2013-07-16 14:55:09

标签: wpf xaml resize window

在我的WPF项目中,我有一个Canvas,其中我做了一些绘图。遵循Window的代码:

<Window x:Name="PropertyDefinition_Window" x:Class="PushOverStraus7.PropertyDefinitionWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="PropertyDefinitionWindow" Height="360" Width="730" Loaded="Window_Loaded">
<Grid>
    <TreeView SelectedItemChanged="Treeview_PropertyDefinition_SelectedItemChanged">
        <TreeViewItem IsExpanded="True">
            <TreeViewItem />
        </TreeViewItem>
        <TreeViewItem>
            <TreeViewItem"/>
        </TreeViewItem>
    </TreeView>
    <Canvas x:Name="Canvas_LongitudinalBarRectanglePage" HorizontalAlignment="Left" Height="251" Margin="255,10,0,0" VerticalAlignment="Top" Width="285" Background="Black">            
    </Canvas> 
    <Button x:Name="NewButton" Content="Nuovo" HorizontalAlignment="Left" Margin="22,277,0,0" VerticalAlignment="Top" Width="45" Click="NewButton_Click"/>
    <Button x:Name="DuplicateButton" Content="Duplica" HorizontalAlignment="Left" Margin="85,277,0,0" VerticalAlignment="Top" Width="45"/>

</Grid>

我希望在调整窗口大小时,Canvas大小会相应更改。然后,我需要重新调整Canvas的ActualWidthActualHeight以使用它们来绘制算法。 如何自动调整画布大小以及如何获取上述值? 谢谢你的帮助

编辑: 我按照要求更改了问题

1 个答案:

答案 0 :(得分:0)

使用以下XAML,当窗口大小更改时,Canvas将自动调整大小。

<Window ...>
    <Frame>
        <Frame.Content>
            <Page>
                <Canvas>
                    ...
                </Canvas>
            </Page>
        </Frame.Content>
    </Frame>
</Window>