首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >组合框ItemSource问题

组合框ItemSource问题
EN

Stack Overflow用户
提问于 2015-10-09 17:55:45
回答 2查看 49关注 0票数 0

我有以下代码

代码语言:javascript
复制
<ComboBox x:Name="hotelComboBox"
          ItemsSource="{Binding HotelCollection}"
          SelectedItem="{Binding ActiveHotel,Mode=TwoWay}"
          Style="{StaticResource ComboBoxStyle}"
          HorizontalAlignment="Center"
          Visibility="{Binding IsFirstTimeUser, ConverterParameter=Inverse, Converter={StaticResource BooleanToVisibilityConverter}}">
    <TextBlock Text="Select Something"
               IsHitTestVisible="False">
        <TextBlock.Style>
            <Style TargetType="TextBlock">
                <Setter Property="Visibility"
                        Value="Hidden" />
                <Style.Triggers>
                    <DataTrigger Binding="{Binding ElementName=hotelComboBox,Path=SelectedItem}"
                                 Value="{x:Null}">
                        <Setter Property="Visibility"
                                Value="Visible" />
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </TextBlock.Style></TextBlock>
</ComboBox>

当我在组合框中添加项目集合时,我得到了类似“在使用ItemsSource之前项目集合必须为空”这样的错误。

如果我删除item Source绑定,我将无法获得此error.but,我需要使用此Item Source。有什么选择吗?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2015-10-09 18:13:35

您不能同时使用ItemsSource和在XAML中定义自定义项。

我猜,你要找的东西是ComboBoxItemTemplate属性。

票数 0
EN

Stack Overflow用户

发布于 2015-10-09 18:14:49

原因是Items是任何ItemsControl (如ComboBox)的content属性。因此,当您将任何元素放入ComboBox中时,它会自动添加到Items集合中。在您的情况下,您需要执行以下操作之一:

  • 声明TextBlock near ComboBox
  • 使用ItemTemplate属性
  • Stop using ItemsSource并使用项代替
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33035230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档