silverlight   发布时间:2022-05-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了内容控件内容大小填写Silverlight 4大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我有一个ContentControl的样式,我想在我当前有一个Border的地方使用.当我使用它,子控件不会伸展到填充,只需要少量的空间.我已经尝试过将Horizo​​ntalAlignment =“Stretch”应用于所有内容,但是它不起作用.怎么了? <Style x:Key="GradientPanel" TargetType="ContentControl"> <Setter P
我有一个ContentControl的样式,我想在我当前有一个Border的地方使用.当我使用它,子控件不会伸展到填充,只需要少量的空间.我已经尝试过将Horizo​​ntalAlignment =“Stretch”应用于所有内容,但是它不起作用.怎么了?

<Style x:Key="GradientPanel" TargetType="ContentControl">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ContentControl">
                <Grid HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
                    <Rectangle RadiusY="10" RadiusX="10" stroke="Black" strokeThickness="0">
                        <Rectangle.Effect>
                            <DropShadowEffect Opacity="0.56" ShadowDepth="1" BlurRadius="3" />
                        </Rectangle.Effect>
                        <Rectangle.Fill>
                            <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                <GradientStop Color="#FFE1EAF3"/>
                                <GradientStop Color="White" Offset="1"/>
                                <GradientStop Color="#FFFAFBFD" Offset="1"/>
                            </LinearGradientBrush>
                        </Rectangle.Fill>
                    </Rectangle>
                    <ContentPresenter Margin="5" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

之前(工作正常):

<Border Style="{Staticresource SearchContainerBorder}" >
    <Grid Margin="5">
        <Grid.RowDeFinitions>
            <RowDeFinition />
        </Grid.RowDeFinitions>
        <Grid.columnDeFinitions>
            <columnDeFinition Width="*" />
            <columnDeFinition Width="Auto" />
        </Grid.columnDeFinitions>
        <ToggleButton  Style="{Staticresource ToggleButtonExpanderStylE}" Grid.Row="0" Grid.column="1" Height="25" Width ="25" HorizontalAlignment="Center" VerticalAlignment="Top" />
        <ContentControl Grid.Row="0"  HorizontalContentAlignment="Stretch" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
    </Grid>
</Border>

之后(用ContentControl替换Border):

<ContentControl Style="{Staticresource GradPanel}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
    <Grid Margin="5">
        <Grid.RowDeFinitions>
            <RowDeFinition />
        </Grid.RowDeFinitions>
        <Grid.columnDeFinitions>
            <columnDeFinition Width="*" />
            <columnDeFinition Width="Auto" />
        </Grid.columnDeFinitions>
        <ToggleButton  Style="{Staticresource ToggleButtonExpanderStylE}" Grid.Row="0" Grid.column="1" Height="25" Width ="25" HorizontalAlignment="Center" VerticalAlignment="Top" />
        <ContentControl Grid.Row="0"  HorizontalContentAlignment="Stretch" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
    </Grid>
</ContentControl>

解决方法

您需要在外部ContentControl上设置Horizo​​ntalContentAlignment =“Stretch”和VerticalContentAlignment =“Stretch”设置.

认行为是不拉伸容器的内容.

例如第一行应该是:

<ContentControl Style="{Staticresource GradPanel}" 
                HorizontalAlignment="Stretch" 
                VerticalAlignment="Stretch" 
                HorizontalContentAlignment="Stretch" 
                VerticalContentAlignment="Stretch" >

大佬总结

以上是大佬教程为你收集整理的内容控件内容大小填写Silverlight 4全部内容,希望文章能够帮你解决内容控件内容大小填写Silverlight 4所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。