给定StackPanel:
<StackPanel>
<TextBox Height="30">Apple</TextBox>
<TextBox Height="80">Banana</TextBox>
<TextBox Height="120">Cherry</TextBox>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
即使子元素本身具有不同的大小,将子元素间隔开来以使它们之间存在大小相等的间隙的最佳方法是什么?可以在没有为每个孩子设置属性的情况下完成吗?
我想知道我是否可以在水平导向的StackPanel中有2个控件,以便正确的项目应该停靠在StackPanel的右侧.
我尝试了以下但它不起作用:
<StackPanel Orientation="Horizontal">
<TextBlock>Left</TextBlock>
<Button Width="30" HorizontalAlignment="Right">Right<Button>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
在上面的代码片段中,我希望Button停靠在StackPanel的右侧.
注意:我需要使用StackPanel,而不是Grid等.
在我的WPF应用程序中,我有一个包含几个控件的Stackpanel.如何将滚动条添加到此堆栈面板.
在下面的WPF XAML中,ScrollViewer不起作用(它显示滚动条但不能滚动,内容从窗口向下移动到底部).
我可以将外部StackPanel更改为Grid,它将起作用.
但是,在我复制以下代码的应用程序中,我需要一个外部StackPanel.我需要对StackPanel做什么才能让ScrollViewer显示一个可用的滚动条?例如VerticalAlignment ="Stretch"Height ="Auto"不起作用.
<StackPanel>
<ScrollViewer>
<StackPanel>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a test"/>
<TextBlock Text="This is a …Run Code Online (Sandbox Code Playgroud) 我试图设置StackPanel的填充,但没有这样的属性.我尝试过StackPanel.Border,但也没有这样的属性.
有任何想法吗?
我有以下代码:
<DockPanel>
<StackPanel DockPanel.Dock="Top" Orientation="Horizontal">
<RadioButton Content="_Programs"
IsChecked="{Binding Path=ProgramBanksSelected}" IsEnabled="{Binding Path=ProgramsEnabled}" Margin="8" />
<StackPanel>
<Label Content="Master" Height="28" Name="MasterFileStatus" VerticalContentAlignment="Center"/>
</StackPanel>
</StackPanel>
...
Run Code Online (Sandbox Code Playgroud)
单选按钮应放在堆栈面板的左侧(我删除了一些按钮,不会使示例混乱),标签(我暂时放在嵌套的StackPanel中)应位于右侧.
我已经尝试了许多对齐组合,但我无法在右侧获得标签.我应该添加什么来实现这一目标?
这是我的XAML代码:
<Window x:Class="CarFinder.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Search for cars in TuMomo" Height="480" Width="600">
<DockPanel Margin="8">
<Border CornerRadius="6"
BorderBrush="Gray"
Background="LightGray"
BorderThickness="2"
Padding="8">
<StackPanel Orientation="Horizontal"
DockPanel.Dock="Top"
Height="25">
<TextBlock FontSize="14" Padding="0 0 8 0">
Search:
</TextBlock>
<TextBox x:Name="txtSearchTerm" Width="400" />
<Image Source="/CarFinder;component/Images/Chrysanthemum.jpg" />
</StackPanel>
</Border>
<StackPanel Orientation="Horizontal"
DockPanel.Dock="Top"
Height="25">
</StackPanel>
</DockPanel>
</Window>
Run Code Online (Sandbox Code Playgroud)
边框设置在整个窗口周围.而且,当我创建另一个StackPanel时,它会添加到我之前的StackPanel的右侧,而不是添加到它下面.这是什么原因?
我有一个带有两个元素的垂直StackPanel:一个Button和一个ListBox.如何将ListBox拉伸到剩余的页面高度?
<StackPanel Height="Auto" Width="Auto">
<Button Height="30" Width="100" Content="Get Content" x:Name="GetContent"/>
<ListBox Height="Auto" Width="Auto" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"/>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
请注意,我使用Grid容器使其工作:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Button Width="100" Height="30" Content="Get Content" Click="OnGetContent" Grid.Row="0" Grid.Column="0"/>
<data:DataGrid x:Name="MyContent" Margin="0,5" Grid.Row="1" Grid.Column="0"/>
</Grid>
Run Code Online (Sandbox Code Playgroud) 我需要能够填充stackpanel,buttons但按钮必须首先出现在stackpanel的底部并向上填充.这些按钮是动态创建的,并且它们的数量未知,因此视觉上的hackery将无法正常工作.我尝试过垂直对齐,但无济于事.
我想简单描述如何为我的MVVM中的数据ItemsControl绑定实现virtualizingstackpanel ObservableCollection.
我有一个ItemsControl选项卡控件中的每个选项卡的实例,并且当ItemsControl变大时,切换选项卡变得非常慢.
我该怎么做才能加快应用程序的速度?
我打开了一个WPF分析器,发现每个选项卡的ItemsControl中显示的每个元素(这是一个自定义用户控件)都有自己的ContentPresenter.所以我基本上有100个内容演示者都在我ObservableCollection的MVVM中运行100个项目.这是正确的吗?我该如何优化?
stackpanel ×10
wpf ×9
xaml ×5
layout ×3
alignment ×2
silverlight ×2
c# ×1
orientation ×1
padding ×1
performance ×1
scrollbars ×1
scrollviewer ×1
wpf-controls ×1