Автоматическое изменение размера пользовательского элемента управления

#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. Всегда рад помочь, сэр, получайте удовольствие