#wpf #user-controls #autosize
#wpf #пользовательские элементы управления #автоматическое изменение размера
Вопрос:
Для приложения WPF у меня есть пользовательский элемент управления MyUsrCntrl с высотой = 300 и шириной = 300, когда я помещаю MyUsrCntrl в окно и устанавливаю его размер в 600×600, пользовательский элемент управления изменяется, но размеры элементов управления в нем не изменяются, есть ли какое-либо решение для этого.
Ответ №1:
Если вы хотите увеличить и сжать высоту и ширину вашего Usercontrol, то сделайте родительские элементы управления Height="*"
и Width="*"
и не присваивайте вашим элементам управления, присутствующим внутри UserControl, никакой высоты и ширины. Что-то вроде:
<Grid Margin="4" Background="Orange">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="50"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0">
<TextBlock Text="It is fixed" Margin="1"/>
<Button Content="It is fixed"/>
</StackPanel>
<StackPanel Grid.Column="1">
<TextBlock Text="It is variable" Margin="1"/>
<Button Content="It is fixed" Margin="2"/>
</StackPanel>
</Grid>
Комментарии:
1. Всегда рад помочь, сэр, получайте удовольствие