码迷,mamicode.com
首页 > 其他好文 > 详细

UWP UserControl 不会自适应大小

时间:2018-01-30 19:37:17      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:sed   get   manager   manage   style   宽度   win   user   .com   

在一般的Page里面,我们通过VisualStateManager,可以根据窗体的宽度,来调整一些控件大小。

        <VisualStateManager.VisualStateGroups>
                <VisualStateGroup x:Name="WindowStates">
                    <VisualState x:Name="PanoramicState">
                        <VisualState.StateTriggers>
                            <AdaptiveTrigger MinWindowWidth="1024"/>
                        </VisualState.StateTriggers>
                        <VisualState.Setters>
                            <Setter Target="row1.Height" Value="0"/>
                            <Setter Target="gridX.Visibility" Value="Collapsed"/>
                        </VisualState.Setters>
                    </VisualState>
                    <VisualState x:Name="WideState">
                        <VisualState.StateTriggers>
                            <AdaptiveTrigger MinWindowWidth="640"/>
                        </VisualState.StateTriggers>
                        <VisualState.Setters>
                            <Setter Target="column1.Width" Value="0"/>
                            <Setter Target="gridY.Visibility" Value="Collapsed"/>
                        </VisualState.Setters>
                    </VisualState>
                    <VisualState x:Name="NarrowState">
                        <VisualState.StateTriggers>
                            <AdaptiveTrigger MinWindowWidth="0"/>
                        </VisualState.StateTriggers>
                        <VisualState.Setters>
                            <Setter Target="column1.Width" Value="0"/>
                            <Setter Target="gridY.Visibility" Value="Collapsed"/>
                        </VisualState.Setters>
                    </VisualState>
                </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>

 

 

 

挡在UserControl里面使用的时候,需要注意下VisualStateManager需要放在根控件的里面,比如定义Grid

<Grid>
<VisualStateManager.VisualStateGroups>

<VisualStateManager.VisualStateGroups/>

其他控件。。。
<Grid/>

 

这样自适应才会起作用。

 

查了Stackoverflow才知道的。https://stackoverflow.com/questions/38175647/uwp-visualstates-in-usercontrol

UWP UserControl 不会自适应大小

标签:sed   get   manager   manage   style   宽度   win   user   .com   

原文地址:https://www.cnblogs.com/hupo376787/p/8386266.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!