开发者

Why does the button size increases as the listbox size gets populated with data?

I'm a newbie to c#. I have designed a windows program with button and listbox. The listbox populates the log as the script runs the application. However, as the listbox gets populated with log, the button and label increases which makes the stack panel very ugly?

Any help/advice would be appreciated. Below is my xaml code.

<Grid>
    <Border BorderBrush="Black" BorderThickness="2" Margin="0,11,0,5" CornerRadius="5" Background="White">
        <StackPanel Orientation="Horizontal" Margin="7,10,7,2">
            <StackPanel Orientation="Vertical">
                <TextBlock Text="City" Margin="5" HorizontalAlignment="Center"></TextBlock>
                <ComboBox Name="City" SelectedValue="Chicago" SelectedValuePath="Name">
                    <ComboBox.ItemTemplate>
                        <DataTemplate>
                    开发者_如何学JAVA        <TextBlock Text="{Binding Path=Name,Mode=OneWay}"></TextBlock>
                        </DataTemplate>
                    </ComboBox.ItemTemplate>
                </ComboBox>
            </StackPanel>
            <Button Name="btnEnter" Content="Enter" Width="200" Margin="4" Padding="6" Click="btnEnter_Click"></Button>
            <Button Name="btnViewLog" Content="View Log" Width="100" Margin="4" Padding="6" Click="btnLog_Click"></Button>
            <ListBox Name="lbLog"  Visibility="Collapsed">
                <ListBox.ItemTemplate>
                    <DataTemplate>
                        <TextBox Text="{Binding Description}" IsReadOnly="True"  BorderThickness="0" Background="Transparent"></TextBox>
      </DataTemplate>
                </ListBox.ItemTemplate>
            </ListBox>
        </StackPanel>

Thanks.

Ash


Without your Xaml, it is hard to diagnose the problem, so please try to post it with any further questions. It SOUNDS like it is a horizontal StackPanel, and the elements are all next to each other.

If the orientation of your StackPanel is Vertical, set the HorizontalAlignment on the button to Left, Right, or Center. If the StackPanel orientation is Horizontal, set the VerticalAlignment on the button to Top, Bottom, or Center.

I'm pretty certain both settings are "Stretch" by default, which means they will try to fill all the space that is available, rather than sizing to their content.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜