如何在WPF中创建文本框填充其他项之间的水平空间?

0 c# wpf xaml

我试图在左边有一个单选按钮,一个右边的按钮,两个都是固定宽度,还有一个文本框,当窗口调整大小时,它们会拉伸以填充空间.

这似乎应该工作:

<Grid >
  <Grid.ColumnDefinitions>
    <ColumnDefinition />
    <ColumnDefinition Width="Auto" />
    <ColumnDefinition />
  </Grid.ColumnDefinitions>
  <StackPanel HorizontalAlignment="Left">
    <RadioButton GroupName="FibOptions" IsChecked="True">Term Closest To N:</RadioButton>
    <RadioButton GroupName="FibOptions">Nth Term:</RadioButton>
  </StackPanel>
  <TextBox x:Name="FibInput" Grid.Column="1" />
  <Button Grid.Column="2" x:Name="FibGen" HorizontalAlignment="Right">Generate</Button>
</Grid>
Run Code Online (Sandbox Code Playgroud)

但是上面的结果是一个很小的文本框,它基本上是一个位于该区域中间的垂直线.对此有何帮助?

Gje*_*ema 5

将列宽设置为*,表示填充剩余空间,并将其他两个设置为auto:

                    <ColumnDefinition Width="auto" />
                    <ColumnDefinition Width="*" />
                    <ColumnDefinition Width="auto" />
Run Code Online (Sandbox Code Playgroud)