我有一个 DatePicker,其 HorizontalAlignment 设置为 Stretch,但它仅拉伸到某个最大宽度(与蓝色条不同)。
我想要 DatePicker 的三个部分或中间的部分按比例拉伸到任意长度。
我该怎么做?
DatePicker
有一个名为“FlyoutButton”的Button
,它限制了控件本身的MaxWidth
。您可以在 Generic.xaml 中找到它。
因此,扩大
MaxWidth
应该有效:
<DatePicker
Grid.Row="1"
HorizontalAlignment="Stretch"
Loaded="DatePickerControl_Loaded">
private void DatePickerControl_Loaded(object sender, Microsoft.UI.Xaml.RoutedEventArgs e)
{
if ((sender as DatePicker)?
.FindDescendant<Button>(x => x.Name is "FlyoutButton") is not Button flyoutButton)
{
return;
}
flyoutButton.MaxWidth = double.PositiveInfinity;
}
顺便说一句,
FindDescendant
扩展方法来自CommunityToolkit.WinUI.ExtensionsNuGet包。