2 回答

TA貢獻(xiàn)1951條經(jīng)驗 獲得超3個贊
我想出了這個非常天真的解決方案:
XAML:
<BoxView x:Name="measureViewBox"
Grid.RowSpan="3" Grid.ColumnSpan="2"
HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"
Opacity="0"/>
<Label x:Name="myLabel"
Grid.RowSpan="3" Grid.ColumnSpan="2"
HorizontalTextAlignment="Center" VerticalTextAlignment="Center"
HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"
Text="ABCD">
后面的代碼:
private void ContentView_SizeChanged(object sender, EventArgs e)
{
double fontSize = measureViewBox.Width;
myLabel.FontSize = fontSize;
SizeRequest measurement = myLabel.Measure(double.PositiveInfinity, double.PositiveInfinity);
while (measurement.Request.Width >= measureViewBox.Width)
{
fontSize -= 2;
myLabel.FontSize = fontSize;
measurement = myLabel.Measure(double.PositiveInfinity, double.PositiveInfinity);
}
}
當(dāng)我在 UWP 中調(diào)整窗口大小時,它非常滯后,但至少現(xiàn)在,它完成了工作。我將在未來嘗試改進(jìn)這一點(diǎn),因此任何建議將不勝感激。
- 2 回答
- 0 關(guān)注
- 182 瀏覽
添加回答
舉報