关于wpf:ItemsControl DataTemplate项并排显示

ItemsControl DataTemplate Items showing side by side

我已经研究了很长时间,找不到答案。

如何在我的项控制中并排显示每个项?

以下代码并排显示每个项目的内容(标签和文本框),但下一个项目显示在下面。假设我的ItemsControl中有3个项目。当前行为是:

标签文本框
标签文字框
标签文字框

我想要的是:

标签文本框标签文本框标签文本框(并排)

当前代码使用堆栈面板鞭将方向设置为水平(这就是标签和文本框并排放置的原因)。但是我需要一些属性或技术来将ItemsControl的内容方向设置为水平。我的代码:

1
2
3
4
5
6
7
8
<ItemsControl.ItemTemplate>
    <DataTemplate>
          <StackPanel Name="pnlText" Orientation="Horizontal" Width="750">
              <Label Content="{Binding ParameterDisplayName, Mode=OneWay}" />
              <TextBox Name="txtText" HorizontalAlignment="Left" Text="{Binding ParameterValue, Mode=TwoWay, ValidatesOnExceptions=True, NotifyOnValidationError=True}" Visibility="{Binding ParameterType, Converter={StaticResource ParameterTypeToVisibilityConverter}, ConverterParameter=Text}" />
           </StackPanel>
    </DataTemplate>
</ItemsControl.ItemTemplate>

有人知道怎么做吗?

谢谢!


您应该为ItemsControl设置此属性:

1
2
3
4
5
<ItemsControl.ItemsPanel>
  <ItemsPanelTemplate>
    <StackPanel Orientation="Horizontal" />
  </ItemsPanelTemplate>
</ItemsControl.ItemsPanel>