我希望将元素水平自动拉伸到网格宽度,因此当您拉伸窗口元素时,必须按比例拉伸它。
<Grid Margin="0,0,0,40" Name="TaskGrid" Visibility="Hidden">
<StackPanel Name="AmountOfSP" Visibility="Collapsed" Orientation="Horizontal" HorizontalAlignment="Stretch">
<CheckBox Name="restrRadioButton" Checked="restrCheckBox_Checked" Unchecked="restrCheckBox_Unchecked"/>
<TextBlock TextWrapping="Wrap" Text="bla-bla" />
<TextBox Name="AmountOfO" HorizontalAlignment="Stretch" MinWidth="70" Height="20" Margin="10,0,0,0"/>
</StackPanel>
</Grid>
答案 0 :(得分:3)
当我回答here时,您不能使用 filename_queue = tf.train.string_input_producer(filenames, shuffle=True)
reader = tf.IdentityReader()
self.key, self.value = reader.read(filename_queue)
self.label = tf.py_func(get_label, [self.key], [tf.int64])[0]
在堆叠方向上拉伸,因为它总是会使用尽可能小的堆叠元素(除非它们有固定的大小,然后它将利用该)。
使用StackPanel
或DockPanel
代替内部组件并将其拉伸到最大尺寸。
答案 1 :(得分:0)
您可以使用类似于下图所示的网格替换堆叠面板;
<Grid Name="AmountOfSP" Visibility="Collapsed">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<CheckBox Name="restrRadioButton" Grid.Column="0" Checked="restrCheckBox_Checked" Unchecked="restrCheckBox_Unchecked"/>
<TextBlock Grid.Column="1" TextWrapping="Wrap" Text="bla-bla" />
<TextBox Grid.Column="2" Name="AmountOfO" HorizontalAlignment="Stretch" MinWidth="70" Height="20" Margin="10,0,0,0"/>
<Grid>
您可以通过更改columnDefinition的宽度来播放不同控件的宽度,例如
<ColumnDefinition Width="Auto"/>
因为它的所有三个列都具有相同的宽度,并将扩展以填充它占据的控件。
你不能以这种方式使用堆栈面板,因为它实际上只是通过“堆叠”(添加)它包含的控件的宽度/高度来获得它的宽度/高度。
您可以使用堆栈面板找到解决方法,但只是使用不同的控件来完成您正在完成的工作要容易得多。
答案 2 :(得分:0)
再添加一个选项以及上述答案。您还可以使用UniformGrid
来实现您的目标。
<Grid Margin="0,0,0,40" Name="TaskGrid">
<UniformGrid Name="AmountOfSP" Columns="3" HorizontalAlignment="Stretch">
<CheckBox x:Name="restrRadioButton"/>
<TextBlock TextWrapping="Wrap" Text="bla-bla" />
<TextBox Name="AmountOfO" HorizontalAlignment="Stretch" MinWidth="70" Height="20" Margin="10,0,0,0"/>
</UniformGrid>
</Grid>