Uwp 设置帧图像的大小
问题1: 我有一个Uwp 设置帧图像的大小,uwp,Uwp,问题1: 我有一个数据模板,如下所示。在我的布局中,我需要将图像tipFrame放在TextBlocktipText下面tipText的文本将根据拉取的服务器文本而改变,因此tipFrame的宽度应相应改变以覆盖tipText 但问题是tipText的父控件,RelativePanel的宽度很大,例如1800。由于tipText的Margin设置Margin=“35,7100,0”,因此tipText的宽度为1800-35=1765,与内容大小不匹配。例如,内容可能只有“hi”。这会导致无法正确
数据模板
,如下所示。在我的布局中,我需要将图像tipFrame
放在TextBlock
tipText
下面tipText的
文本将根据拉取的服务器文本而改变,因此tipFrame的
宽度应相应改变以覆盖tipText
但问题是tipText的
父控件,RelativePanel的
宽度很大,例如1800。由于tipText的Margin设置Margin=“35,7100,0”
,因此tipText的宽度为1800-35=1765
,与内容大小不匹配。例如,内容可能只有“hi”
。这会导致无法正确设置帧的大小。
如何解决?谢谢
<DataTemplate x:Key="singleRow">
<StackPanel Orientation="Vertical" Height="388">
<RelativePanel>
<TextBlock x:Name="titleText" Text="{Binding Path=titleText}" Foreground="White" FontSize="40" TextLineBounds="TrimToCapHeight" Margin="0,6,0,0" />
<TextBlock x:Name="tipText" Text="try something" FontSize="20" Foreground="#B9B9B9" RelativePanel.RightOf="titleText"
Margin="35,7,0,0" TextWrapping="WrapWholeWords"/>
<Image x:Name="tipFrame" Source="ms-appx:///Assets/Template/list1/tipFrame.png" RelativePanel.RightOf="titleText"
Height="36" Width="{Binding ElementName=tipTextShadow,Path=Width}" Stretch="Fill"
Margin="35,5,0,0"/>
tipFrame图像附在下面。
问题2:
我将上图的拉伸模式设置为Stretch=“Fill”
如果图像的宽度设置得太大,则图像的四个角的半径会发生太大的变化。如何解决?
谢谢
更多信息:
我添加了一张新图片来说明我的问题,希望能有所帮助
以下是我的一些建议:
如果您的内容宽度和高度是可变的,那么我不建议使用RelativePanel
进行布局,但建议使用Grid
您给出的图像是一个圆角矩形。过度拉伸将不可避免地扭曲图像。尝试Stretch=“Uniform”
或Stretch=“UniformToFill”
这是我给出的布局建议:
提示
网格行/列定义中的*
指示剩余区域,这将阻止您手动设置宽度/高度
向你问好。你好,汤姆。让我谈谈我的猜测。是否希望文本在左侧,图像在右侧,并且两个文本块上下对齐?